BPEL-非同期相互作用
クライアントBPELプロセスは、サービスBPELプロセス(下図のd1)に要求を送信し、サービスが応答するまで待機します(下図のd2)。
たとえば、ユーザーが大学への入学を求めるオンライン申請フォームの購読を要求し、その要求が入学事務局で受け入れられない限り、その要求を確認することはできません。
クライアントBPELプロセスには、要求を送信するための呼び出しアクティビティと、応答を受信するための受信アクティビティが必要です。
サービスBPELプロセスには、着信要求を受け入れるための受信アクティビティと、要求された情報または障害のいずれかを返すための呼び出しアクティビティが必要です。
Note −同期BPELプロセスと非同期BPELプロセスからの応答の違いは、同期サービスは応答アクティビティを使用してクライアントに応答し、非同期サービスは呼び出しアクティビティを使用することです。
すべてのパートナーアクティビティと同様に、Webサービス記述言語(WSDL)ファイルが相互作用を定義します。WSDLファイルは以下のとおりです。
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>