Vous pouvez acheminer les messages de plusieurs manière à l'aide de noeuds finaux définis en phase d'intégration ou de noeuds finaux déterminés, de manière dynamique, en phase d'exécution.
Le routage dynamique concerne l'acheminement de message où le flux est dynamique et tous les noeuds finaux possibles sont prédéfinis dans un module SCA (Service Component Architecture), et l'acheminement de message où le flux et la sélection du noeud final sont tous les deux dynamiques. Dans le dernier cas, les noeuds finaux de service sont sélectionnés à partir d'une source externe, en phase d'exécution. Le routage dynamique est pris en charge sur toutes les liaisons, à l'exception de la liaison EJB.
L'environnement d'exécution est doté d'une fonction de routage de messages vers une adresse de noeud final identifiée par un élément d'en-tête de message. Cet élément d'en-tête de message peut être mis à jour par des primitives de médiation, dans un flux de médiation. L'adresse de noeud final peut être mise à jour avec des informations d'un registre, d'une base de données ou avec des informations provenant du message même.
Pour que l'environnement d'exécution puisse implémenter le routage dynamique sur une demande, la propriété Utiliser le noeud final dynamique s'il est défini dans l'en-tête de message doit être définie sur le module SCA. Les développeurs d'intégration peuvent définir la propriété Utiliser le noeud final dynamique s'il est défini dans l'en-tête de message ou la promouvoir (la rendre visible en phase d'exécution) de telle sorte que l'administrateur d'exécution puisse la définir. Vous pouvez visualiser les propriétés de module dans la fenêtre Propriétés de module. Pour afficher la fenêtre, cliquez sur . Le développeur d'intégration donne aux propriétés promues des noms d'alias qui sont affichés sur la console d'administration.
Vous pouvez utiliser IBM® WebSphere Service Registry and Repository (WSRR) pour stocker les informations de noeud final de service puis créer les modules SCA pour extraire les noeuds finaux du registre WSRR.
Lorsque vous développez des modules SCA, vous utilisez la primitive de médiation de recherche de noeud final pour permettre au flux de médiation d'effectuer une requête sur un registre WSRR pour un noeud final de service ou un ensemble de noeuds finaux de service. Si un module SCA extrait un ensemble de noeuds finaux, il doit alors utiliser une autre primitive de médiation pour sélectionner le noeud final à privilégier.