BPEL - Interazioni asincrone
Il Processo BPEL del Cliente invia una richiesta al Processo BPEL del Servizio (d1 nella figura sotto riportata), e attende fino a quando il servizio risponde (d2 nella figura sotto riportata).
Ad esempio, un utente richiede l'iscrizione a un modulo di domanda online per l'ammissione a un college e la richiesta non può essere confermata a meno che non venga accettata presso l'ufficio di ammissione.
Il processo BPEL client necessita di un'attività invoke per inviare la richiesta e un'attività di ricezione per ricevere la risposta.
Il processo BPEL del servizio richiede un'attività di ricezione per accettare la richiesta in arrivo e un'attività di invocazione per restituire le informazioni richieste o un errore.
Note - La differenza tra la risposta da un processo BPEL sincrono e asincrono è che il servizio sincrono utilizza un'attività di risposta per rispondere al client e un servizio asincrono utilizza un'attività di chiamata.
Come per tutte le attività dei partner, il file WSDL (Web Services Description Language) definisce l'interazione. Il file WSDL è come mostrato di seguito.
WSDL File
<wsdl:portType name = "BPELProcess">
<wsdl:operation name = "process">
<wsdl:input message = "client:BPELProcessRequestMessage"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:portType name = "BPELProcessCallback">
<wsdl:operation name = "processResponse">
<wsdl:input message = "client:BPELProcessResponseMessage"/>
</wsdl:operation>
</wsdl:portType>