bonjour,
retrouver un EJB sur le serveur application se fait via un lookup JNDI. Et pour cela on doit préciser le nom de l'application, et je déploie mon EAR via maven sous JBOss 5.1.0.
Logiquement la console JMX me montre mes objets déployés dont l'entrée est le nom de l'EAR (par exemple test-1.0.0-SNAPSHOT)
le lookup devient alors : lookup ("test-1.0.0-SNAPSHOT/Imonobjet/remote") et ca fonctionne tres bien.
Seulement ce système crée une dépendance inverse entre le code et la chaine de fabrication du livrable. en effet dès que je vais monter en version de mon appli je vais devoir modifier la chaine de lookup... pas terrible
Plusieurs solutions :
- faire un lookup de niveau classe : lookup(java:global/classes/Imonobjet"). C'est mieux mais que ce passe-t-il si un autre EAR déploie un objet de même nom?
- récupérer le nom de l'EAR créé par Maven dans le code mais comment ?
- avoir un fichier ressource dans lequel on met la version de l'EAR (mais bon je passe aussi par le plugin release et je suis pas certain qu'il le traite)
bref des idées ?
Partager