<la valeur par défaut-paramètres régionaux> ne semble pas fonctionner, au lieu du <pris en charge des paramètres régionaux> est utilisé

je voulais définir l'emplacement par défaut de mon jsf projet web à l'anglais, donc
j'ai fait la suivante:

faces-config.xml

<application>
    <locale-config>
        <default-locale>en_EN</default-locale>
        <supported-locale>de_DE</supported-locale>
    </locale-config>
    <resource-bundle>
        <base-name>de.hof.tschuwwa.resources.messages</base-name>
        <var>msg</var>
    </resource-bundle>
</application>

j'ai un paquet dans mon dossier src de.hof.tschuwwa.resources et à l'intérieur
du paquet que j'ai deux fichiers de propriétés:

messages_de_DE.properties
messages_en_EN.properties

et je l'ai testé dans un petit fichier xhtml:

<h:body>
    <ui:composition template="/templates/master.xhtml">
        <ui:define name="header">
            <h:form>
                <h:commandButton action="#{navigationService.toLogin}" value="#{msg['login']}" />
                <h:commandButton action="#{navigationService.toRegister}" value="#{msg['register']}" />
            </h:form>
        </ui:define>            
    </ui:composition>
</h:body>

Lorsque je démarre mon application, il montre les valeurs allemandes et pas
les valeurs en anglais. je voulais la langue par défaut est l'anglais.

Comment puis-je mettre ma langue par défaut? L'faces-config.xml par défaut-paramètres régionaux
ne semble pas fonctionner.

Aussi j'ai besoin de savoir comment je peux changer ma localisation. j'ai écrit ce petit
service:

@Named
@SessionScoped
public class LanguageService implements Serializable {
    private static final long serialVersionUID = 1L;

    public void changeLanguage(String language) {
        FacesContext.getCurrentInstance().getViewRoot().setLocale(new Locale(language));
    }
}

et essayé avec les boutons suivants à l'intérieur d'un formulaire:

<p:commandButton id="english" value="English" action="#{languageService.changeLanguage('en')}" immediate="true" />
<p:commandButton id="german" value="Deutsch" action="#{languageService.changeLanguage('de')}" immediate="true" />

mais rien ne s'est passé quand je les ai utilisés.

  • Est la configuration de votre navigateur les paramètres régionaux par défaut de?
  • Même si je change mon navigateur par défaut local de l'anglais mon web app charge tous les messages en allemand
  • Êtes-vous sûr en_EN locale existe? Je suis à 90% sûr que tout fonctionnera correctement lors de l'utilisation de en_US ou fr au lieu de. Et le renommage des fichiers de propriétés de cours.
InformationsquelleAutor user1882812 | 2013-11-24