Почему интернационализация не работает должным образом? JSF - PullRequest
2 голосов
/ 18 июня 2010

Это мой messages_en_US.properties файл в папке WEB-INF/classes: -

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.

У меня ничего нет в моем face-config.xml

Что я делаю не так?Заранее спасибо:)

1 Ответ

4 голосов
/ 18 июня 2010

Вы должны иметь это в 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

Также будьте осторожны с заглавными буквами.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...