Cette rubrique permet de créer une médiation qui mappe du style de codage des messages SOAP avec pièces jointes
vers le style de codage WS-I Attachments Profile Version 1.0.
Avant de commencer
Pour une présentation de l'utilisation des médiations avec le bus
d'intégration de services, voir
Médiations. Pour plus de détail sur le mode d'installation d'une médiation dans WebSphere
Application Server
et son association à une destination de bus, voir Utilisation des médiations.
Cette rubrique suppose que vous savez utiliser un environnement de développement de beans de session Java Platform,
Enterprise Edition (Java EE), tel que outils d'assemblage ou IBM® Rational Application Developer.
L'exemple de médiation de cette rubrique se réfère aux exemples WSDL donnés dans la rubrique
Prise en charge des pièces jointes associées : Exemples WSDL
Pourquoi et quand exécuter cette tâche
Vous pouvez utiliser une médiation pour effectuer un mappage d'un codage de message SOAP avec pièces jointes
vers le codage WS-I Attachments Profile Version 1.0. La définition WSDL est la même dans ces deux situations, ainsi si
vous créez une médiation qui écrit à nouveau les valeurs d'ID de contenu afin de correspondre
aux conventions de la version 1.0. Alors le message est codé par les technologies d'intégration de services en fonction des
règles de la version 1.0.
Pour créer une médiation de mappage, utilisez un environnement de développement de bean session Java EE
(Java Platform,
Enterprise Edition) et procédez comme suit :
Procédure
- Créez un projet de gestionnaire de médiations vide. Le projet,
ainsi que la classe de gestionnaire qui implémente l'interface du gestionnaire sont
ainsi créés. Pour des instructions détaillées sur la manière de procéder,
voir Création du gestionnaire de médiations.
- A l'aide de la sous-fenêtre de médiation du descripteur d'EJB, définissez
la classe de gestionnaire comme gestionnaire de médiations.
Remarque : Lors de
cette opération, vous spécifiez le nom sous lequel la liste de gestionnaires de
médiations est connue. Notez ce nom pour référence ultérieure lorsque vous créerez la
médiation dans le bus.
- Ajoutez la fonction de mappage au gestionnaire. Avant
de commencer, voir
Ajout d'une fonction de médiation au code de gestionnaire. Vous trouverez ci-dessous un exemple de code de gestionnaire de médiations qui redéfinit les valeurs d'ID de contenu afin qu'elles correspondent aux conventions de la version 1.0 :
int uuidBase = 0;
DataObject root = SIMessage.getDataGraph().getRootObject();
List attachments = root.getList("info/attachments");
Iterator entries = attachments.iterator();
while(entries.hasNext()) {
DataObject entry = (DataObject) entries.next();
if(entry.getType().equals("BoundMIMEAttachmentEntryType")) {
String newContentId = entry.getString("messagePart") + "=" +
Integer.toString(uuidBase++) +
"@some.domain";
}
}
Remarque : Pour les messages qui utilisent une référence swaref ou d'autres mécanismes d'URI
afin de désigner les pièces jointes, les valeurs d'URI devront peut-être également être mises à jour pour
correspondre aux nouvelles valeurs d'ID de contenu. Toutefois, de tels mécanismes sont généralement
utilisés pour désigner des pièces jointes qui ne sont pas liées.
Pour
plus d'informations sur les classes des technologies d'intégration de services,
et notamment sur les classes du gestionnaire de médiations, voir la Documentation sur les API générées - Interfaces de programmation d'applications .
- Exportez l'application d'entreprise de médiation de mappage.
Que faire ensuite
Vous pouvez désormais installer votre médiation dans
WebSphere
Application Server et l'associer à une
destination de bus, comme décrit dans
Utilisation des médiations.