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