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 :

debutant avec ResourceBundle


Sujet :

JSF Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Par défaut debutant avec ResourceBundle
    bonjour;
    j'ai vient de debuter avec ResourceBundle, j'ai realiser deux classes en java une simple frame et LanguageChooser tout est bien et marche sans probleme; mais mintenat je ne veut pas appliquer LanguageChooser sur une classe mais sur une page jsf comment pourrai-je faire cela?

    ou je doit mettre les fichier proprietes comment configurer l'application et comme appeler ma classe LanguageChooser.
    et merci

  2. #2
    Expert confirmé
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Par défaut
    Bonjour.
    Une simple recherche Google sur les termes "JSF resourceBundle" te donne comme premier lien :
    http://www.laliluna.de/javaserver-fa...-tutorial.html
    Voilou !
    Bonne chance.

  3. #3
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Par défaut
    merci beaucoup djo.mos; votre lien m'a ete tres utile

  4. #4
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Par défaut
    ce tuto se compose de 3 ressources bundles:
    MessageResources_de.properties
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    welcome=Willkommen auf der Seite
    login={0} hat sich eingeloggt am {1}.
    imagePath=/images/image_de.gif
    MessageResources_en.properties
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    welcome=Welcome on this site.
    login={0} have be logged in on {1}.
    imagePath=/images/image_en.gif
    MessageResources_en_US.properties
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    welcome=Welcome on this site.
    login={0} have be logged in on {1}.
    imagePath=/images/image_en_US.gif
    et une classe:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    public class Utils {
     
            protected static ClassLoader getCurrentClassLoader(Object defaultObject){
     
                    ClassLoader loader = Thread.currentThread().getContextClassLoader();
     
                    if(loader == null){
                            loader = defaultObject.getClass().getClassLoader();
                    }
     
                    return loader;
            }
     
            public static String getMessageResourceString(
                                                            String bundleName, 
                                                            String key, 
                                                            Object params[], 
                                                            Locale locale){
     
                    String text = null;
     
                    ResourceBundle bundle = 
                                    ResourceBundle.getBundle(bundleName, locale, 
                                                                                    getCurrentClassLoader(params));
     
                    try{
                            text = bundle.getString(key);
                    } catch(MissingResourceException e){
                            text = "?? key " + key + " not found ??";
                    }
     
                    if(params != null){
                            MessageFormat mf = new MessageFormat(text, locale);
                            text = mf.format(params, new StringBuffer(), null).toString();
                    }
     
                    return text;
            }
    }
    et un bean :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    public class MyBean {
     
            public String getWelcomeMessage() {
     
                    FacesContext context = FacesContext.getCurrentInstance();
     
                    String text = Utils.getMessageResourceString(context.getApplication()
                                    .getMessageBundle(), "welcome", null, context.getViewRoot()
                                    .getLocale());
     
                    return text;
            }
     
    }
    et en fin la jsp:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    <%@ page language="java" %>
    <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
    <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
     
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
            <title>JSF message resource</title>
    </head>
     
    <body>
            <f:view>
                    <f:loadBundle basename="de.laliluna.tutorial.messageresource.MessageResources" 
                            var="msg"/>
     
                            <h:outputText value="#{msg.welcome}" />
     
                            <br><br>
     
                            <h:outputFormat value="#{msg.login}">
                                    <f:param value="Peter" />
                                    <f:param value="10/03/2005" />
                            </h:outputFormat>
     
                            <br><br>
     
                            <h:graphicImage value="#{msg.imagePath}" />
     
                            <br><br>
     
                            <h:outputText value="#{myBean.welcomeMessage}" />
            </f:view>
    </body>
    </html>


    mon question est le suivant:
    dans la jsp il ya appel de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     <f:loadBundle basename="de.laliluna.tutorial.messageresource.MessageResources" 
                            var="msg"/>
    mais il n'ya pas specification du resourcebundle a utiliser;
    par exemple, comment faire pour utiliser la langue anglaise et comment faire pour selectionner la langue (deutch).
    et d'autre terme comment passer d'une laugue a une autre

  5. #5
    Membre confirmé Avatar de seb55555
    Profil pro
    Inscrit en
    Août 2004
    Messages
    117
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2004
    Messages : 117
    Par défaut
    Il choisi le bundle est choisie en fonction de la locale.
    Tu peux affecter la locale de ton choix sur la balise <f:view locale=....>
    A doit de mettre en paramètre locale, la locale de ton choix.

  6. #6
    Membre éprouvé Avatar de anisj1m
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juillet 2006
    Messages
    1 067
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 067
    Par défaut
    alors comment est choisit la langue dans mon exemple, car je ne voit pas l'utilisation de <f:view locale=....>.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. debutant avec ResourceBundle
    Par anisj1m dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 17/10/2007, 11h50
  2. Probleme simple de debutant avec INSERT TO et UPDATE
    Par Tom_Cruise dans le forum Langage SQL
    Réponses: 5
    Dernier message: 26/08/2005, 08h15
  3. debuter avec opengl
    Par osykomantis dans le forum OpenGL
    Réponses: 2
    Dernier message: 15/03/2005, 11h45
  4. Problème pour debuter avec glut
    Par ismael14 dans le forum GLUT
    Réponses: 2
    Dernier message: 26/07/2004, 10h37
  5. Gentoo prob de startx (Débutant) avec une ATI
    Par ~Dr@cuL~ dans le forum Applications et environnements graphiques
    Réponses: 10
    Dernier message: 08/04/2004, 18h42

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