PDA

View Full Version : [BPEL] Invocazione da parte del client


elleby
31-08-2010, 17:34
Allora io sapevo che BPEL funziona come in figura sottostante:

http://www.eclipse.org/tptp/platform/documents/design/choreography_html/tutorials/wsbpel_tut3.jpg

Il client interroga il processo BPEL, questo viene eseguito elaborando la richiesta del client, interroga i suo Web service partner e restituisce la risposta al client.

Ora mi hanno chiesto se ha senso invece che il client invochi BPEL e questo restituisca un WSDL con i suoi partner link che poi il client interrogerà in autonomia. Ora imho questa implementazione toglie tutti i vantaggi di BPEL di demandare allo stesso la complessità dell'orchestrazione fra Web Service. Qualcuno ha qualche altra opinione al riguardo?

Mixmar
31-08-2010, 21:52
Ora mi hanno chiesto se ha senso invece che il client invochi BPEL e questo restituisca un WSDL con i suoi partner link che poi il client interrogerà in autonomia. Ora imho questa implementazione toglie tutti i vantaggi di BPEL di demandare allo stesso la complessità dell'orchestrazione fra Web Service. Qualcuno ha qualche altra opinione al riguardo?

Sostanzialmente concordo con te: non ha molto senso per il client di un processo BPEL mettersi ad interrogare "in prima persona" i web services che vengo "utilizzati" da BPEL stesso, perchè il client dovrebbe ricostruire anche la business logic del BPEL per ottenere la stessa funzionalità.

Tanto più che, almeno a compile time, i PartnerLinkType potrebbero essere già noti, visto che solitamente sono inclusi nel WSDL che descrive il servizio offerto dal BPEL (che viene invocato come un qualunque WS, per cui il client è un client WS, e per essere sviluppato necessita di un descrittore WSDL del servizio da chiamare).

Diciamo che, per fare un'analogia magari un po' forzata, la conoscenza degli endpoint / servizi invocati dal BPEL senza la sottostante logica interna, equivale a conoscere l'elenco delle librerie necessarie ad un programma per funzionare, cioè le proprie dipendenze. Si tratta chiaramente di un aiuto a comprenderne le funzionalità, ma non consente certo di reimplementarlo agevolmente.

elleby
06-09-2010, 15:51
Grazie