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 :

ResourceBundle ajouté au classpath


Sujet :

Collection et Stream Java

  1. #1
    Membre du Club
    Inscrit en
    Mai 2002
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 101
    Points : 56
    Points
    56
    Par défaut ResourceBundle ajouté au classpath
    Bonjour.

    J'ai créé un zip (prop.zip) contenant un fichier param.properties (pour simplifier, je n'ai aucune arborescence)
    Je l'ai ajouté au classpath de mon application web (dans Eclipse en tant que dépendance J2EE).
    Mon fichier est bien présent dans le répertoire lib de l'application déployée sous tomcat.

    J'ai pourtant le message d'erreur suivant :
    Can't find bundle for base name param, locale fr_FR
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ResourceBundle.getBundle("param",Locale.getDefault(), this.getClass().getClassLoader())
    même résultat si je ne précise pas le classLoader...

    Or ma ressource est bien disponible :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    URL url = this.getClass().getClassLoader().getResource("prop.zip");
    Mais vu que c'est un fichier zip, je n'arrive pas à convertir cette URL en bundle.

    Plutôt que le zipper, je pourrai directement accéder au fichier param.properties, mais dans ce cas, je ne peux l'ajouter au classpath de mon appli (vu que l'on ne peut ajouter que des zip ou des jar)

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    1 252
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 252
    Points : 1 419
    Points
    1 419
    Par défaut
    Tu ne devrais pas mettre ton/tes fichier(s) properties dans un fichier zip, mais directement dans l'arborescence java.

    Si tu veux vraiment le mettre dans un fichier zip, tu devrais songer à créer ton propre classloader qui ouvre le fichier zip et utilise son contenu. Cette solution est lourde et peu efficace, car dans le cas d'un fichier properties placé dans l'arborescence, une fois le jar créé, ce fichier sera également compressé.

  3. #3
    Membre du Club
    Inscrit en
    Mai 2002
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 101
    Points : 56
    Points
    56
    Par défaut
    En fait, c'est Tomcat integré dans Eclipse qui merde.
    Si j'ajoute mon zip au classpath de mon appli, celle-ci ne le trouve pas.
    Or sous Websphere, ça fonctionne parfaitement.
    Le but étant d'externaliser ce fichier de config.

  4. #4
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par polo54 Voir le message
    Si j'ajoute mon zip au classpath de mon appli, celle-ci ne le trouve pas.
    Or sous Websphere, ça fonctionne parfaitement.
    Tu l'ajoute comment? (dans les deux cas). Normalement, on utilise des jars pour el classpath, pas des zip!

  5. #5
    Membre du Club
    Inscrit en
    Mai 2002
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 101
    Points : 56
    Points
    56
    Par défaut
    Entre jar et zip, il n'y a pas une grande différence. On peut trouver certaines librairies sont au format zip.

    Pour WAS il suffit d'utiliser les bibliothèques partagées.
    Pour Tomcat, j'ai ajouté un 'class folder' avec Eclipse mais il ne trouve pas son contenu via le ResourceBundle.

  6. #6
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par polo54 Voir le message
    Entre jar et zip, il n'y a pas une grande différence. On peut trouver certaines librairies sont au format zip.
    Souvent, les librairies "au format zip" sont à dézipper avant utilisation. Structurellement, un jar est un zip, mais la pluspart des application / classloader font un scann sur *.jar pour charger les librairies, et ne verront simplement pas les zip. Quand aux ide, c'est particuliers

  7. #7
    Membre du Club
    Inscrit en
    Mai 2002
    Messages
    101
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 101
    Points : 56
    Points
    56
    Par défaut
    Désolé de te contredire, mais j'ai des mes applis différentes librairies au format zip qui sont gérées exactement de la même façon (que ce soit par Tomcat, Was ou Weblo..)
    Je n'ai jamais eu besoin de les dézipper.

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

Discussions similaires

  1. Impossible d'ajouter au classpath les librairies Spring
    Par anapotheque dans le forum Spring Web
    Réponses: 0
    Dernier message: 29/07/2010, 11h32
  2. ajouter des jars dans le classpath d'execution
    Par inter_amine dans le forum Hibernate
    Réponses: 7
    Dernier message: 12/01/2007, 13h51
  3. Ajouter un CLASSPATH sur Eclipse
    Par nice dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 29/05/2006, 16h45
  4. Réponses: 3
    Dernier message: 22/05/2006, 10h21
  5. [Websphere 5] ajout d'un chemin dans le classpath
    Par bast dans le forum Websphere
    Réponses: 2
    Dernier message: 25/10/2005, 16h04

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