Internationalization 使用Seam 2.2.2实现国际化

Internationalization 使用Seam 2.2.2实现国际化,internationalization,seam,facelets,bundle,Internationalization,Seam,Facelets,Bundle,我有一个JBossSeam2.2.2项目,这是我第一次使用这个框架进行国际化。我已经设置了默认区域设置,并且使用全局消息\u XX.properties已经开始工作。 这个项目发展很快,为了更好的组织和维护,我希望在不同的属性文件中更好地组织特定页面的消息。 提到这一点,并在特定段落中指出: 如果只想为特定页面定义消息,可以 在与JSF视图id同名的资源包中指定它, 删除了前导/尾随文件扩展名。所以我们可以 如果我们只需要,请将我们的信息放在welcome/hello_en.properties

我有一个JBossSeam2.2.2项目,这是我第一次使用这个框架进行国际化。我已经设置了默认区域设置,并且使用全局消息\u XX.properties已经开始工作。 这个项目发展很快,为了更好的组织和维护,我希望在不同的属性文件中更好地组织特定页面的消息。 提到这一点,并在特定段落中指出:

如果只想为特定页面定义消息,可以 在与JSF视图id同名的资源包中指定它, 删除了前导/尾随文件扩展名。所以我们可以 如果我们只需要,请将我们的信息放在welcome/hello_en.properties中 在/welcome/hello.jsp上显示消息

本段可在以下网址找到:

这些文档提到了扩展名为.jsp的页面,但在我的例子中,我使用的是facelets,我拥有的是一个.xhtml文件,因此对于我的home.xhtml页面,我创建了一个home\u pt\u BR.properties文件,它是我的应用程序的默认语言环境,并且我在这个.properties文件中放置了这个特定页面的消息

实际上,这种方法对我不起作用

我还尝试在faces-config.xml和pages.xml中注册页面,但这似乎同样不起作用


那么,如何配置Seam以支持我的应用程序的多个捆绑文件呢

您可以将捆绑包文件添加到components.xml

例如:

<core:resource-loader>
    <core:bundle-names>
        <value>messages</value>
        <value>strings</value>
    </core:bundle-names>
</core:resource-loader>

信息
串

我不太清楚您建议了什么,但我会看看这个选项。你能说得更具体些吗?在哪里声明捆绑包名称?每个值标记都有一个bundle名称吗?嗨,我看了一下建议的aproach,事实上它不满足我的要求,因为在conponents.xml文件中跟踪系统中的所有bundle文件是一种可能的维护方法。我想为每个文件保留一个捆绑文件的方法,比如Sea-doc建议的工作。实际上,您的解决方案不能满足我的要求,但就好像它是唯一的解决方案,我会认为它是正确的。我仍然相信还有其他更简单的方法可以做到这一点,或者我只是误解了seam文档。