【发布时间】:2011-05-27 06:45:58
【问题描述】:
目前我的团队正在用 java 开发一个 web 2.0 应用程序,我们正在使用 JSF 作为表示层。我们从表示层开始,所以我们还没有添加业务和数据层。
我们使用的技术: - JSF (Mojarra 2.0.3) - Primefaces 2.1(JSF 组件库) - 弹簧安全 3.0.5 - jBoss 5.1
我被要求为应用程序添加语言环境支持。所以我配置faces-config.xml文件如下:
<application>
<locale-config>
<default-locale>en</default-locale>
<supported-locale>pt</supported-locale>
<supported-locale>en</supported-locale>
<supported-locale>es</supported-locale>
</locale-config>
<message-bundle>
com.<company>.<product>.i18n.MessageBundle
</message-bundle>
</application>
我创建了 MessageBundle 后缀文件并部署了应用程序。我读到 JSF 使用 3 个标准来选择语言环境: 1) 请求语言环境(Accept-Language 请求标头)与支持的语言环境之间的匹配 2) 在 faces 配置文件中定义的应用程序默认语言环境 3) JVM 默认语言环境
当我尝试在浏览器选项中更改语言时,应用程序不会更改语言环境。即使我只配置默认语言以外的一种语言。我在这里错过了什么吗?当我更改浏览器语言(如果它是受支持的语言)时,这是预期的结果还是实际上应该更改内容?
我非常感谢任何提示或至少是关于我在哪里可以找到答案的指针,因为我已经用谷歌搜索了它,但没有运气。
提前致谢。
【问题讨论】:
标签: java jsf localization jboss