JBoss 7 – Chargement de ressources par JNDI – Externalisation d'un fichier .properties

Le 12/02/2014 Par Pierre Liseron jbossjboss 7jboss eapjndiproperties

Il peut est parfois utile de charger des propriétés directement en JNDI depuis le serveur. Par exemple, un fichier properties qu’on souhaite externaliser de son war et qui est spécifique à chaque environnement. JBoss possède un mécanisme pour disposer de propriétés exposées en JNDI à l’application. Cette configuration se situe dans le subsystem naming:1.1.

JBoss offre avec ce subsystem deux solutions pour disposer d’une « base de données » de properties:

Soit en mettant toutes les properties dans le fichier de configuration comme ceci.

<
subsystem xmlns="urn:jboss:domain:naming:1.1">	
 <
bindings>	
   <
simple name="jndi/mavaleur" value="mavaleur">
   <
/simple>
 <
/bindings>
<
/subsystem>

Soit en injectant le fichier de properties en JNDI dans l’application avec l’ajout d’un module dans JBOSS. https://github.com/crowdcode-de/jndi-properties-factory ce qui est très pratique si le fichier de properties est volumineux.

Voilà, avec cette petite astuce, il est possible de stocker des propriétés dans le fichier de configuration standalone, ou bien dans un fichier de properties externalisé. Il est après très facile de charger ces paramètrages dans l’application grace à JNDI.

À voir aussi

Tous les articles