Environnement technique : Infa MDM 9.7 installé sous JBOSS 6.1 EAP
Index
Objectif
Configurer correctement une Queue JMS pour l’utiliser à travers les messages Triggers.
NB : l’installation ne configure pas une file JMS avec JBoss EAP pour l’utilisation de triggers (contrairement à WebLogic où tout semble fonctionner dès la fin de l’installation moyennant néanmoins la configuration manuelle dans la console : ConnectionFactory/Queue).
Coté JBoss EAP
Créer la Queue dans JBoss EAP 6.1
A priori la Queue créée lors de l’installation ne peut fonctionner avec le Hub (on ne peut l’affecter dans la console sans un message du type que cette Queue est déjà affectée par le système …). Il faut donc en créer une spécifique : /queue/siperian.sif.jms.test.queue
Pour cela :
- Editer le fichier standalone-full.xml dans [ROOT]\jboss-eap-6.1\standalone\configuration
- Ajouter les lignes suivantes :
<jms-queue name="queue/siperian.sif.jms.test.queue"> <entry name="queue/siperian.sif.jms.test.queue"/> <entry name="jboss/exported/queue/siperian.sif.jms.test.queue"/> </jms-queue>
Relancer le serveur JBoss EAP.
Vérifier dans la console JBoss sur http://win2k8:9990/console/ (en tant qu’admin/admin) :
- Dans la rubrique JMS Destination/Queues, vérifier que la nouvelle queue est bien créée :
Création d’un utilisateur (consommateur)
Il faut créer un utilisateur qui sera le consommateur de la queue JMS :
$JBOSS_HOME/bin/add-user.sh -s -a -u guest -p [email protected] -ro guest
Ou dans Windows
Cd %JBOSS_HOME%\bin add-user.bat -s -a -u guest -p [email protected] -ro guest
Cette commande créé l’utilisateur guest (password [email protected])
Configuration coté Hub
Création du Message server
Dans le menu Message Server (en tant qu’admin, sur master et après lock), ajouter un serveur de message comme suit :
Ce serveur va en fait être configuré via JNDI à travers JBoss. Il faut donc renseigner le nom JNDI de la ConnectionFactory (ou /ConnectionFactory):
Création de la Queue
Ajouter une Queue comme suit :
Renseigner comme suit :
Puis tester :
NB : Le test créé un message dans la queue JMS
En cas de problème
Regarder la console de log de JBoss (idéalement lancée en ligne de commande) ou alors faites un :
$ tail –f [Root]/infamdm/hub/server/logs/cmxserver.log
Configurer HermesJMS
- Créer le CLASSPATH/Providers comme suit dans hermesJMS (préférences) :
Seul un jar est nécessaire (celui qui est dans le répertoire bin/client de JBoss)
- Configurer ensuite une nouvelle session HermesJMS avec les paramètres suivants :
Type : HornetQ session
Class: hermes.JNDIConnectionFactory
Loader: JBoss EAP 6.1 (correspond à la configuration précédente)
Properties:
binding = jms/RemoteConnectionFactory
initialContextFactory = org.jboss.naming.remote.client.InitialContextFactory
providerURL = remote://localhost:4447
urlPkgPrefixes = org.jboss.naming.remote.client
Créez ensuite une queue (zone destination ci-dessous) comme suit,
(Il faut bien sur reprendre le nom de la queue JMS qui a été créée plus haut, soit queue/siperian.sif.jms.test.queue) :
Modifiez ensuite les propriétés de cette queue comme suit :
Ajoutez-y l’utilisateur (créé plus haut) guest et son mot de passe.
Le tour est joué vous pouvez maintenant observer les modifications qui sont effectuées dans le MDM en live.
J’ai, en plus de 15 ans, accumulé une solide expérience autour de projets variés d’intégration (données & applicatives). J’ai en effet travaillé au sein de neuf entreprises différentes et y ai successivement adopté la vision du fournisseur de service, du client final et de l’éditeur de logiciels. Cette expérience m’a naturellement conduit à intervenir dans des projets d’envergure autour de la digitalisation de processus métiers et ce principalement dans des secteurs d’activités tels que l’assurance et la finance.
Passionné d’IA (Machine Learning, NLP et Deep Learning), j’ai rejoint BluePrism en 2019 en tant que consultant solution avant-vente, où je combine mes compétences en la matière avec l’automatisation afin d’aider mes clients à robotiser de manière plus performante des processus métiers parfois complexes. En parallèle de mon activité professionnelle, j’anime ce blog dans le but de montrer comment comprendre et analyser des données le plus simplement possible.
Apprendre, convaincre par l’argumentation et transmettre mon savoir pourrait être mon triptyque caractéristique.