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

Collection et Stream Java Discussion :

[internationalisation] [ResourceBundle] Exception


Sujet :

Collection et Stream Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 67
    Par défaut [internationalisation] [ResourceBundle] Exception
    Bonjour,

    J'essai de m'exercer à l'international, mais j'ai quelques problèmes.
    J'ai fait un code de tout ce qui a de plus banale avec l'aide de la java doc. Mais une exception se léve sans je comprene pourquoi.
    Mon appli fonction de la manière suivante :
    -une fenêtre, un label, deux boutons avec lesquels on change l'affiche.
    J'ai l'impression que l'appli ne trouve pas mes fichiers properties.
    voici mon code :
    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
     
    //mes imports
    import java.awt.*;
    import java.awt.event.*;
    import java.util.*;
    import java.io.*;
    import javax.swing.*;
     
    public class InternationalTest extends JFrame
    {
        private JLabel label;
        private Button French;
        private Button US;
        private Locale currentLocale;
        private ResourceBundle res;
     
        public InternationalTest()
        {
            JPanel G = new JPanel();
            label = new JLabel("toto");
     
            French = new Button("French");
            US = new Button("US");
     
            French.addActionListener(new ActionListener()
            {
                public void actionPerformed(ActionEvent event)
                {
                    setCurrentLocale(new Locale("fr","FR"));
                    updateDisplay();
                }
            });
     
            US.addActionListener(new ActionListener()
            {
                public void actionPerformed(ActionEvent event)
                {
                    setCurrentLocale(new Locale("en","US"));
                    updateDisplay();
                }
            });
     
            G.add(label);
            G.add(French);
            G.add(US);
            Container c = this.getContentPane();
            c.add(G);
            setSize(200,300);
            show();
        }
     
        public void setCurrentLocale(Locale locale)
        {
            currentLocale = locale;
            res = ResourceBundle.getBundle("RetireStrings",currentLocale);
        }
     
        public void updateDisplay()
        {
     
            try{
                label.setText(res.getString("Country"));
            }catch( Exception e){
                label.setText("pas trouvé!");
            }
        }
     
        public static void main(String[] args)
        {
            new InternationalTest();
        }
    }
    Merci

  2. #2
    Membre Expert Avatar de willoi
    Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2006
    Messages
    1 355
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Décembre 2006
    Messages : 1 355
    Par défaut
    C est quoi l exception qui est leve tu peux nous le montrer ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 67
    Par défaut
    Là voici là voilà :

    Exception in thread "AWT-EventQueue-0" java.util.MissingResourceException: Can't find resource for bundle java.util.PropertyResourceBundle, key Country
    at java.util.ResourceBundle.getObject(ResourceBundle.java:325)
    at java.util.ResourceBundle.getObject(ResourceBundle.java:322)
    at java.util.ResourceBundle.getString(ResourceBundle.java:285)
    at InternationalTest.updateDisplay(InternationalTest.java:60)
    at InternationalTest$1.actionPerformed(InternationalTest.java:28)
    at java.awt.Button.processActionEvent(Button.java:388)
    at java.awt.Button.processEvent(Button.java:356)
    at java.awt.Component.dispatchEventImpl(Component.java:3968)
    at java.awt.Component.dispatchEvent(Component.java:3803)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
    at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

  4. #4
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut
    Dans ta méthode updateDisplay, tu peux faire ce qui suit et nous dire ce qui sort sur la sortie standard :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public void updateDisplay()
        {  
            try{
                java.util.Enumeration keys = res.getKeys();
                while (keys.hasMoreElements())
                    System.out.println(keys.nextElement());
                label.setText(res.getString("Country"));
            }catch( Exception e){
                e.printStackTrace();
                label.setText("pas trouvé!");
            }
        }

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 67
    Par défaut
    Je suis de voir mon erreur en executant le code de mac.
    J'ai écris contry au lieu de country. Désolé....
    Merci à vous et encore désolé de vous avoir fait perdre votre temps.

    Bonne soirée

  6. #6
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Par défaut

Discussions similaires

  1. Réponses: 5
    Dernier message: 09/03/2014, 21h13
  2. Réponses: 4
    Dernier message: 29/10/2010, 14h32
  3. Internationalisation et ResourceBundle
    Par damien77 dans le forum Collection et Stream
    Réponses: 1
    Dernier message: 16/09/2007, 23h33
  4. [resourceBundle] cast exception
    Par jeb001 dans le forum Struts 1
    Réponses: 2
    Dernier message: 13/01/2007, 19h31
  5. c: gestion des exceptions
    Par vince_lille dans le forum C
    Réponses: 7
    Dernier message: 05/06/2002, 14h11

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