Bpel-asynchronous-interactions

提供:Dev Guides
移動先:案内検索

BPEL-非同期相互作用

クライアントBPELプロセスは、サービスBPELプロセスにリクエストを送信し(下図のd1)、サービスが応答するまで待機します(下図のd2)。

たとえば、ユーザーが大学への入学のためにオンライン申請フォームへのサブスクリプションを要求すると、その要求は入学事務局で受け入れられない限り確認できません。

非同期インタラクション

  • クライアントBPELプロセスには、リクエストを送信するinvokeアクティビティとリプライを受信するreceiveアクティビティが必要です。 サービスBPELプロセスには、着信要求を受け入れるreceiveアクティビティと、要求された情報または障害のいずれかを返すinvokeアクティビティが必要です。 + 注*-同期BPELプロセスと非同期BPELプロセスからの応答の違いは、同期サービスが応答アクティビティを使用してクライアントに応答し、非同期サービスが呼び出しアクティビティを使用することです。
  • すべてのパートナーアクティビティと同様に、Webサービス記述言語(WSDL)ファイルは相互作用を定義します。 WSDLファイルは次のとおりです。
  • WSDLファイル*
<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>