【发布时间】:2015-04-26 06:40:35
【问题描述】:
我想为讲英语和法语的用户提供英语和法语语言,并为所有其他要求其他语言的用户提供英语。 我的 faces-config.xml:
<application>
<locale-config>
<default-locale>en</default-locale>
<supported-locale>en</supported-locale>
<supported-locale>fr</supported-locale>
</locale-config>
<resource-bundle>
<base-name>fr.testi18n.messages</base-name>
<var>msg</var>
</resource-bundle>
我有 3 个名为 messages.properties 和 messages_en.properties(带有英文消息)和 messages_fr.properties(带有法语消息)的资源文件。
用户可以使用<h:selectOneMenu> 选择他们的语言,并且选定的语言环境在会话范围的支持bean 中注册。所有视图都有一个 locale 属性,其值来自支持 bean。当他们选择法语或英语时,没关系:显示正确的消息,但当他们选择中文(zh)时,消息是法语而不是英语。
为了测试,我什至删除了<supported-locale>fr</supported-locale>这一行,消息仍然是法语!
我是法国人,但我在浏览器 (Chrome) 的配置中将法语放在了最后一个位置。
我的错误可能是什么?
【问题讨论】:
标签: jsf-2 internationalization