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

Langage Java Discussion :

ResourceBundle - le chemin


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 347
    Par défaut ResourceBundle - le chemin
    Bonjour,

    J'ai un problème avec ResourceBundle. Je ne sais en fait où il va chercher mon fichier properties.
    Mais en faite, je cherche cela car je souhaiterais dans la même classe voir les différents properties qui se trouve dans des chemins différents.

    propertiesExemple1= ResourceBundle.getBundle("/exemple1/description");

    Merci davance

  2. #2
    Membre éprouvé Avatar de VinceFromBcn
    Inscrit en
    Juin 2004
    Messages
    108
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 108
    Par défaut
    Il recherche cela dans ton "classloader"

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2006
    Messages
    238
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 238
    Par défaut
    Salut,

    Il recherche dans le jar le dossier exemple1 qui se situe à la racine du jar et il prend le fichier description dedans.

    a+

  4. #4
    Rédacteur/Modérateur

    Avatar de bouye
    Homme Profil pro
    Information Technologies Specialist (Scientific Computing)
    Inscrit en
    Août 2005
    Messages
    6 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Information Technologies Specialist (Scientific Computing)
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Août 2005
    Messages : 6 904
    Billets dans le blog
    54
    Par défaut
    Il recherche les fichiers suivants en fonction de la Locale actuelle : "/exemple1/description<language>_<pays>_<variante>.properties", "/exemple1/description<language>_<pays>.properties", "/exemple1/description<language>.properties" et "/exemple1/description.properties" sur les sources (repertoires mais egalement fichiers ZIP et JAR) disponibles specifiees sur le CLASSPATH dans l'ordre dans lesquels elles sont specifiees dans la variable d'envirronement*.
    La resolution s'arrete sur le premier resultat correct trouve.

    *Note : certains repertoires speciaux faisant partie du mecanisme des extensions (comme le contenu du repertoire lib/ext du JRE) sont egalement verifies avant le CLASSPATH meme s'ils ne sont pas specifies dedans. De meme les regles sont un peu differentes avec Java Web Start, il me semble.

    Il te faut :
    - voir les sources des ResourceBundle et PropertyResourceBundle.
    - voir les sources du ClassLoader par defaut.
    Merci de penser au tag quand une réponse a été apportée à votre question. Aucune réponse ne sera donnée à des messages privés portant sur des questions d'ordre technique. Les forums sont là pour que vous y postiez publiquement vos problèmes.

    suivez mon blog sur Développez.

    Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the universe trying to produce bigger and better idiots. So far, the universe is winning. ~ Rich Cook

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 347
    Par défaut
    C'est pas top... car je dois donc changer de ClassLoader uniquement pour lire d'autres repertoires.
    Je dois donc créer un ClassLoader temporaire par autres repertoires..
    Mais je je ne sais pas comment créer un ClassLoader en lui indiquant le repertoire...

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    347
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 347
    Par défaut
    Bonjour,

    Je me permet de faire un up car je n'avance vraiment pas

    Voici ma ligne de code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    propertiesExemple1= ResourceBundle.getBundle("/exemple1/description");
    Je sais que le repertoire où il va chercher mon properties est project\ressources où dedans j'ai bien exemple1/description.


    Or j'ai un repertoire project2\ressources avec exemple1/description et j'aimerais qu'il le prend aussi en compte.

    Mais j'ai pas d'idée du tout...

    Pour infos, j'ai quand je rajoute une extension à mon programme, le programme doit chercher aillleur que son répertoire de base (là ou il y a l'extension). J'ai donc le path voir un peu plus mais je ne sais pas comment changer le ResourceBundle de mon code !!!

    Merci davance

  7. #7
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    5
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 5
    Par défaut
    En faite, le getBundle va rechercher dans ton dossier source (src) quand tu es en cours de developpement.
    Quand tu vas voir ton dossier ou se trouve ton projet tu as normalement 'src', et quand tu vas dans 'src' tu met ton dossier 'description1' et dedans tes fichiers de langue.

    quand tu vas appeler se fichier avec ton getBundle il faut pas resonner comme un systeme de dossier avec des / ou \ mais il faut resonner comme un package, c'est a dire un . pour separer les fichiers...
    dans ton cas ca donnerais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    propertiesExemple1= ResourceBundle.getBundle("exemple1.description");
    Juste un conseil, si tu met des fichiers de langues, tu créais un 'description.properties', mais qui te servira de "au cas ou les autres plante pour une raison inconnue". Pour les autres oublis pas de rajouter le Locale deriere... (_fr_FR, ca_FR, en_EN, us_EN, ...)

Discussions similaires

  1. XPath: intersection de chemins
    Par aldo047 dans le forum XSL/XSLT/XPATH
    Réponses: 4
    Dernier message: 13/03/2003, 10h30
  2. Chemin d'accès au clip et scenario en flash
    Par Gential dans le forum Flash
    Réponses: 4
    Dernier message: 28/02/2003, 10h10
  3. Comment subsituer un chemin par un autre dans un réseau ?
    Par Baillard dans le forum Développement
    Réponses: 3
    Dernier message: 11/08/2002, 14h01
  4. [FORMS] Chemin des icones (intégré FAQ 150 QR)
    Par jerome62 dans le forum Forms
    Réponses: 2
    Dernier message: 30/07/2002, 08h32
  5. Algorithme de recherche de chemin
    Par amelie gaya dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 09/06/2002, 15h29

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