jeudi 8 novembre 2007

Appel d'une servlet depuis BPEL


Si un service de votre système d'information expose une servlet ou une URL en utilisant le protocole http, Bpel peut l'utiliser.

Ce mécanisme peut être trés pratique car il permet d'utiliser une technologie différente de JAVA, comme par exemple service IIS, PHP, ... directement dans BPEL.

L'exemple d'appel ci-dessous utilise une servlet java trés simple qui retourne un flux XML.
Le source java de cette magnifique servlet est disponible sur ce lien : ici

Maintenant le problème est d'appeler cette url directement via BPEL. Pour cela on utilisera un fichier WSDL customisé. C'est à dire que l'on va décrire dans ce WSDL la structure XSD d'envoi de paramètre et la structure de réception.

le WSDL complet est disponible sur ce lien : ici

il est important de bien comprendre ce WSDL:

  • l'appel de l'URL est positionné sur cette ligne :
http:address location="http://hsimonne-fr.fr.oracle.com/DemoSOA-ServletHttp-context-root"

  • Le nom de la servlet ou du service (php, asp, aspx ...) est présent sur la ligne :

http:operation location="/maservlet"

Ensuite il faut inclure ce WSDL dans votre projet BPEL et d'ajouter un partnerLink en sélectionnant ce WSDL.

Une tâche Invoke permet ensuite d'appeler votre partnerLink.

retrouvez l'ensemble du projet BPEL (à ajouter dans votre jdev) sur ce lien : ici

plus d'infos en anglais sur : http://technology.amis.nl/blog/?p=1273#comment-156033


Aucun commentaire: