IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JSF Java Discussion :

[JSF 1.2/Internationalisation] Propager la Locale dans l'application


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de longbeach
    Profil pro
    Architecte de système d’information
    Inscrit en
    Avril 2003
    Messages
    943
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Avril 2003
    Messages : 943
    Par défaut [JSF 1.2/Internationalisation] Propager la Locale dans l'application
    Bonjour,
    est-ce que vous savez comment internationaliser une application de façon dynamique dans JSF 1.2 ?
    J'ai grosso modo créé 2 fichiers msg_fr.properties ( langue par defaut, français) et msg_en.properties ( langue anglaise)

    Ensuite j'ai défini une méthode changeLangue() dans un Managed Bean qui permet de switcher la langue depuis la 1ère page de l'application.
    Cette méthode est appelée dans un tag <h:commandLink>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    public void changeLangue() {
     
    		 FacesContext context = FacesContext.getCurrentInstance();
    		 // je teste un paramètre langue et en fonction je switch 
                      ...
                      ...
     
    		context.getViewRoot().setLocale(Locale.ENGLISH);
    		//ou bien	context.getViewRoot().setLocale(Locale.FRENCH);
    		context.getApplication().setDefaultLocale(context.getViewRoot().getLocale());
    J'ai evidemment modifié mon fichier faces-config.xml en conséquence.

    En fait ça marche pour la page courante mais la Locale n'est pas propagée dans les pages suivantes de l'application.
    La Locale par defaut de mon navigateur est l'anglais et du coup les pages suivantes sont tjrs en anglais, même
    si j'ai switché en Français dans la 1ère page.

    Savez-vous comment propager cette Locale à toutes les pages de l'application dans JSF 1.2 ?
    Et est-ce qu'en JSF 2.0 l'internationalisation a été améliorée ?

    Merci d'avance.

  2. #2
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par longbeach Voir le message
    Bonjour,
    est-ce que vous savez comment internationaliser une application de façon dynamique dans JSF 1.2 ?
    J'ai grosso modo créé 2 fichiers msg_fr.properties ( langue par defaut,
    français) et msg_en.properties ( langue anglaise)
    à priori, tu n'a pas besoin de définir le Locale dans la classe, le nommage des fichiers Ressource_fr.properties ou Ressources_us.properties suffit.Il faudrait ensuite définir dans le faces-config:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <application>
            <locale-config>
                <default-locale>fr</default-locale>
                <supported-locale>en</supported-locale>
                <supported-locale>fr</supported-locale>
                <supported-locale>us</supported-locale>
            </locale-config>
        </application>
    Citation Envoyé par longbeach Voir le message
    Et est-ce qu'en JSF 2.0 l'internationalisation a été améliorée ?

    Merci d'avance.
    Y'a un changement dans la gestion des ressources dans JSF 2.0, mais je ne pense pas que la gestion de l'internationalisation change.

  3. #3
    Rédacteur
    Avatar de longbeach
    Profil pro
    Architecte de système d’information
    Inscrit en
    Avril 2003
    Messages
    943
    Détails du profil
    Informations personnelles :
    Âge : 50
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Architecte de système d’information

    Informations forums :
    Inscription : Avril 2003
    Messages : 943
    Par défaut
    J'ai trouvé :
    il faut jouer avec l'attribut Locale du tag <f:view>

    Je suis cependant surpris que JSF 2.0 n'ait rien apporté à l'internationalisation, par rapport à la version 1.2

  4. #4
    Rédacteur

    Profil pro
    Inscrit en
    Juin 2003
    Messages
    4 184
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 4 184
    Par défaut
    Citation Envoyé par longbeach Voir le message
    J'ai trouvé :
    il faut jouer avec l'attribut Locale du tag <f:view>

    Je suis cependant surpris que JSF 2.0 n'ait rien apporté à l'internationalisation, par rapport à la version 1.2

    pourquoi ça na marche pas avec la configuration du faces-config?

Discussions similaires

  1. variable locale dans une Application multithreading
    Par dev1980 dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 13/06/2007, 12h59
  2. importé une page HTML locale dans JSP !
    Par abd21 dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 20/06/2006, 11h01
  3. [JSF]Affichage de beans depuis une ArrayList dans une JSP
    Par adrien.nicolet dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 05/06/2006, 17h33
  4. Utilisation Locales dans Progress Label
    Par LeCaméléon dans le forum XMLRAD
    Réponses: 2
    Dernier message: 02/06/2006, 15h51
  5. Réponses: 5
    Dernier message: 01/03/2006, 23h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo