[英]Why is internationalization not working properly? JSF
这是我的WEB-INF/classes
文件夹中的messages_en_US.properties
文件:
Login=Login
然后我创建了messages_fr_FR.properties
Login=frenchLogin
然后在我的JSF页面中,我这样写:-
<f:loadBundle basename="messages" var="msg"/>
<h:commandButton id="btnLogin" value="#{msg.Login}" actionListener="#{IndexBean.doLogin}"/>
默认情况下,我可以正确看到“登录”文本。 但是当我进入Firefox并将默认语言更改为fr-fr时,我的文本仍然保持不变,即我看不到frenchLogin。
我的faces-config.xml中没有任何内容
我究竟做错了什么? 提前致谢 :)
您必须在faces-config.xml
<application>
<message-bundle>com.mydomain.resources.Messages</message-bundle>
<locale-config>
<default-locale>fr_FR</default-locale>
<supported-locale>en_EN</supported-locale>
</locale-config>
</application>
您需要一个Messages.properties,它将是默认值。
在您的jsf页面中:
<f:loadBundle basename="com.mydomain.resources.Messages" var="msg" />
消息文件必须位于src/main/java/
,然后位于一个包中。 我的是/src/main/java/com/mydomain/resources
也请注意大写字母。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.