繁体   English   中英

为什么国际化不能正常工作? JSF

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM