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

Wildfly/JBoss Java Discussion :

dossier de configuration externe d'une appli


Sujet :

Wildfly/JBoss Java

  1. #1
    Futur Membre du Club
    Inscrit en
    Janvier 2009
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 13
    Points : 7
    Points
    7
    Par défaut dossier de configuration externe d'une appli
    bonjour,

    je dois mettre en place un serveur JBoss pour ma boite et j'ai une petite contrainte à respecter qui est celle de l'externalisation des fichier properties d'une application.
    je m'explique, avant on utilisait websphere et donc sur le serveur d'appli websphere on avait un dossier conf/ dans lequel on stockait tous les fichiers .properties de toutes les applications hors pour l'instant je ne vois pas de solution pour jboss autre que d'insérer tous ces fichiers dans l'ear directement..;ce qui est tres genant puisque nos fichiers de configs changent tous les jours et qu'il s'agirait donc de redelpoyer l'ear a chaque modif des fichier properties, donc ya t il un moyen de spécifier dans Jboss un repertoire ou chaque application devra aller chercher ses fichiers de configurations en dehors de l'ear?

    merci pour votre aide!

  2. #2
    Membre éprouvé
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Points : 1 269
    Points
    1 269
    Par défaut
    Tout dépend comment sont chargés tes fichiers.

    Si c'est par des techniques de type FileSystem (new File(...), par exemple), alors tu mets tes fichiers où tu veux, à partir du moment où JBoss a la permission.

    Si tu y accèdes par un classloader, alors tu dois les mettre dans un répertoire accessible via classloader !
    • Le premier endroit est effectivement l'ear ; sachant qu'il peut être déployé en mode répertoire, avec des techniques de liens symboliques tu peux t'en sortir.
    • Ensuite, tu peux les mettre dans un jar que tu mettrais dans le lib de JBoss. Par contre, dans ce cas, c'est forcément sous forme d'archive.
    • Enfin, il y a le répertoire conf de la configuration, qui est aussi accessible par un classloader. D'ailleurs JBoss l'utilise comme cela (cf. fichiers du sous-répertoire props).

  3. #3
    Futur Membre du Club
    Inscrit en
    Janvier 2009
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    merci pour ta reponse!

    pourrais-tu m'expliquer les modifications à apporter à l'appli pour qu'elle aille chercher les fichiers properties dans le dossier conf par exemple par l'intermediarie d'un classloader?

  4. #4
    Membre éprouvé
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Points : 1 269
    Points
    1 269
    Par défaut
    Par exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Properties props = new Properties();
    InputStream propStream = Mailer.class.getResourceAsStream(configFileName);
    props.load(propStream);

  5. #5
    Futur Membre du Club
    Inscrit en
    Janvier 2009
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    mon probleme est que je dois externaliser les fichiers de configuration de l'appli a la racine genre "c:/conf/", je sais que les fichiers sont cherchés par défaut dans les repertoires WEB-INF/classe et WEB-INF/lib, n'y a t il pas un moyen simple de rajouter une entrée au classloader de l'application afin d'eviter de specifier dans chacune des classes le chemin complet de tous les fichier de configuration?

  6. #6
    Membre éprouvé
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Points : 1 269
    Points
    1 269
    Par défaut
    Finalement, le dossier conf de la config de JBoss te convient ou pas ?

    Si tu veux un autre répertoire, totalement externe à JBoss, tu peux toujours le mettre dans le classpath, avec la variable d'environnement JBOSS_CLASSPATH.

  7. #7
    Futur Membre du Club
    Inscrit en
    Janvier 2009
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Janvier 2009
    Messages : 13
    Points : 7
    Points
    7
    Par défaut
    meric pour tes reponses...

    dsl je sais ca change un peu tout l'temps, parcque je debarque un peu dans le projet et c'est un peu flou...

    le truc qu'on me demande c de spécifier pour chaque appli un dossier de configuration bien précis du type "c:/product/conf/nomAppli/" dans lequel se trouveront tous les fichier properties et xml de conf.

    la solution du JBOSS_CLASSPATH dans mon cas n'est pas tres efficace dans le sens ou je risque d'avoir des conflits puisque JBOSS_CLASSPATH est commun a toutes les applis... c'est pour ca que j'aurai souhaité definir un classloader spécifique par EAR, et la je suis vraiment perdu je cherche mais je n'arrive à rien d'exceptionnel..

    j'avais vaguement vu l'idée du fichier jboss-app.xml dans l'EAR qui permettait de definir des repertoire mais je ne comprend pas bien le fonctionnement? aurais tu une idée?

    merci encore pour ton aide

Discussions similaires

  1. Accéder à des fichiers externes dans une appli J2EE
    Par endbegins dans le forum Développement Web en Java
    Réponses: 8
    Dernier message: 31/03/2011, 15h01
  2. Ajout d'un plugin externe dans une appli RCP
    Par bradyas dans le forum Eclipse Platform
    Réponses: 0
    Dernier message: 21/11/2007, 11h42
  3. Réponses: 3
    Dernier message: 26/09/2005, 11h41
  4. Réponses: 2
    Dernier message: 31/03/2005, 00h58
  5. Récupérer le Handle d'une Appli externe
    Par luxprog dans le forum Windows
    Réponses: 15
    Dernier message: 29/04/2004, 14h47

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