2010-12-05 7 views
2

En ce moment je développe une application composite utilisant Open ESB. J'ai testé mon application par le biais d'un scénario de test en envoyant un message SOAP de demande, et cela fonctionne très bien.Appeler BPEL à partir d'un WebService dans OpenESB

Le problème est, je veux que mon application composite pour pouvoir être utilisé comme un webservice pour que je puisse appeler l'application composite à partir de Python en utilisant SOAPpy, pas en envoyant un message SOAP modifié comme dans le cas de test.

Comment puis-je y parvenir? Dois-je invoquer le processus BPEL à partir d'un webservice? J'ai déjà lu "Une introduction en douceur: explorer OpenESB" et "Construire des applications composites basées sur SOA en utilisant NetBeans IDE 6". Les deux livres créent une interface pour l'application composite, n'utilisant pas l'application composite comme un service Web.

Merci à l'avance,

+0

hey s'il vous plaît, aidez-moi pour invoquer mon application bpel via le code java ou webservice. quand je passe par le code java en utilisant la classe Locator obtenant classnotfound (même jar inclus cette classe) et webservice je n'ai pas beaucoup d'idée (j'ai généré un proxy pour mon processus) – Pedantic

Répondre

2

Eh bien, par définition, chaque processus BPEL est rendu en tant que service Web. En d'autres termes: la seule possibilité d'invoquer un processus BPEL consiste à appeler l'interface de service Web fournie par le processus BPEL (myRole du lien partenaire utilisé pour les activités de message entrant). Lorsque votre scénario de test soumet également un message SOAP au processus BPEL, tout autre client de service Web peut faire de même.

0

Désolé pour une réponse tardive mais cela peut aider d'autres utilisateurs. Bien sûr, ils n'utiliseront pas les applications composites en tant que service Web simplement parce que - l'application composite - est un client consommant le service Web que vous avez défini à l'aide du BPEL (Business Process Execution LANGUAGE). Maintenant, la question est, comment obtenir le wsdl pour notre service Web?

Réponse:

  1. retournez à votre demande composite
  2. sélectionnez "ports wsdl", sélectionnez le fichier WSDL que vous avez créé dans le projet "BPEL MODEL".
  3. clic droit => Propriétés => emplacement, puis copiez l'emplacement valeur
  4. remplacer {httpdefaultport} par 9080
  5. ajouter? Wsdl à la fin de l'emplacement
Questions connexes