FME Flow:2025.1
Éditeur JMS
L'éditeur JMS reçoit des messages provenant de courtiers de messages compatibles Java Message System (JMS), tels qu'IBM WebSphere MQ, et les publie dans des rubriques.
Configuration d'un courtier de messages JMS avecFME Flow
Avant de configurer un éditeur JMS, vous devez configurer un courtier JMS avec lequel travailler.FME Flow. Les étapes dépendent du courtier que vous utilisez et sont expliquées dans la section suivante (applicable à la fois à l'éditeur JMS et à l'abonné JMS) :
Création d'un éditeur JMS pourFME Flow
- In the FME Flow Web User Interface, select Notifications > Publications, and click Create.
- Donnez un nom à la publication.
- Spécifiez JMS pour le protocole.
- Précisez leThèmes vous souhaitez publier en utilisant le sélecteur déroulant. Pour créer un sujet et l'utiliser immédiatement, cliquez sur+.Lors de la réception de messages JMS du courtier de messages, ces rubriques seront notifiées.
- Type de fournisseur ou contexte : le courtier de messages auquel se connecter ou la fabrique de contexte initiale si le courtier n'est pas répertorié.
- URL du fournisseur : l’URL du répertoire contenant les détails de connexion pour le fournisseur JMS.
- Propriétés supplémentaires du fournisseur : toutes les propriétés supplémentaires spécifiques au fournisseur, sous la formeclé=valeur. Par exemple,randomize=false. Spécifiez plusieurs paires sur des lignes séparées.
- Fabrique de connexion : le nom de l’objet de fabrique de connexion.
- Nom d'utilisateur : un nom d'utilisateur d'authentification.
- Mot de passe : Un mot de passe d'authentification.
- Destination(s) : Le nom du ou des objets de destination. Ceux-ci correspondent à des files d'attente et/ou à des sujets. Plusieurs destinations peuvent être spécifiées, séparées par une virgule.
- Cliquez sur OK.
Dans la plupart des cas, ce champ n'est pas obligatoire. Les courtiers JMS testés par Safe, notamment Apache ActiveMQ, IBM Websphere MQ et Oracle WebLogic JMS, ne nécessitent aucune propriété supplémentaire pour établir une connexion.
Exemple de configuration d'Apache ActiveMQ
| Chemin de classe Java |
Aucun changement requis. (Les bibliothèques Apache ActiveMQ 5.6.0 sont fournies avecFME Flow.) |
| Type de fournisseur ou contexte | ACTIVMQ |
| URL du fournisseur | tcp://serveur:61616 |
| Propriétés supplémentaires du fournisseur | -- |
| Usine de connexion | ConnectionFactory |
| Nom d'utilisateur |
-- |
| Mot de passe |
-- |
| Destination(s) | dynamicQueues/MaFileD'Attente |
Exemple de configuration d'IBM WebSphere 7
| Chemin de classe Java | ... -FMESERVER_CLASSPATH « ...;C:/Program Files (x86)/IBM/WebSphere MQ/java/lib/* » ... |
| Type de fournisseur ou contexte | WEBSPHERE70 |
| URL du fournisseur | fichier:/C:/jndi/ |
| Propriétés supplémentaires du fournisseur | -- |
| Usine de connexion | cf1 |
| Nom d'utilisateur | administrateur |
| Mot de passe | administrateur |
| Destination(s) | q1,t1 |
Exemple de configuration d'Oracle Weblogic
| Type de fournisseur ou contexte | weblogic.jndi.WLInitialContextFactory |
| URL du fournisseur | t3://bq-w2008:7001 |
| Propriétés supplémentaires du fournisseur | -- |
| Usine de connexion | jms/TestConnectionFactory |
| Nom d'utilisateur |
-- |
| Mot de passe |
-- |
| Destination(s) | jms/TestJMSQueue |
Contenu de la notification
Le contenu de la notification JSON est composé des paires clé-valeur suivantes :
"fns_type": "jms_publisher"- "jms_publisher_type": Cette valeur peut être l’un des types de messages JMS suivants :
- "texte" - Message texte
- "objet"- ObjectMessage
- "carte"- MapMessage
- "jms_publisher_content": Cette valeur peut être l'une des suivantes :
- "<contenu>" - Le contenu d'un message texte.
- "<objet>.toString()" - Le contenu d'un ObjectMessage.
- "<map_key1> = < map_value1 >, < map_key2> = < map_value2 >", et ainsi de suite - Les paires nom-valeur qui composent un MapMessage.
Exemple
Cet exemple de notification est envoyé en fonction d'un message texte reçu d'un courtier de messages. Le corps du message contient « Bonjour tout le monde ».
{
"fns_type": "jms_publisher"
"jms_publisher_type": "texte"
"jms_publisher_content": "Bonjour tout le monde"
}