BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA
 ドキュメントのダウンロード   サイト マップ   用語集 
検索

BPM - Workshop サンプル ユーザーズ ガイド

 前 次 目次 索引 PDF で表示  

BPM-Workshop 相互運用性プロセス

この章では、相互運用性プロセスの完了に必要な手順、および WebLogic Integration BPM - Workshop 相互運用性サンプルで交換されるメッセージについて説明します。

 


サンプルの実行

サンプルを実行するには、以下の手順を実行します。

  1. 図3-1 に示すように、Worklist の [オーガニゼーション] ドロップダウン リストから BPMWLW を選択します。

    図3-1 Worklist でのオーガニゼーションの選択


     

  2. [ワークフロー] メニューから [ワークフローを開始] を選択します。図3-2 に示す [ワークフローを開始] ウィンドウが表示されます。

    図3-2 ワークフローの開始


     

  3. 選択したオーガニゼーションが BPMWLW であることを確認します。

  4. SendPO ワークフローを選択し、[OK] をクリックします。ワークフローが開始したことを示すメッセージ ボックスが表示されます。

  5. メッセージ ボックスで [了解] を選択します。

    Worklist で SendPO ワークフローを開始すると、ワークフローは次のいずれかの URI を使用して PO XML メッセージを jws.queue JMS キューに送信します。

    SOAP over HTTP サンプルでは、SendPO Web サービスが PO を受信し、次に purchase メソッドを起動します。purchase メソッドは WLW2BPMControl.sendXMLrequest メソッドを呼び出し、次に、そのメソッドが BPMControl.sendXMLrequest メソッドを呼び出します。BPMControl.sendXMLEvent メソッド呼び出しにより、PO が com.bea.wli.bpm.EventQueue JMS キューに入れられます。

    XML over HTTP サンプルでは、Send PO Web サービスが PO を受信し、次に sendXMLEvent メソッドを起動します。BPM2WLW.sendXMLEvent メソッドはWLW2BPMControl.onXMLEvent メソッドを呼び出し、次に、そのメソッドが BPMControl.sendXMLEvent メソッドを呼び出します。BPMControl.sendXMLEvent メソッド呼び出しにより、PO が com.bea.wli.bpm.EventQueue JMS キューに入れられます。

    次に、ProcessPO ワークフローの開始ノードは、キューから PO を取り出し、そのコンテンツを変数に抽出します。ProcessPO ワークフローの Approve PO ノードは、タスクを wlisystem ユーザに割り当て、ユーザが Worklist でタスクを実行するまで待機します。図3-3 を参照してください。

    図3-3 Approve PO ワークフロー ノードでのユーザへのタスクの割り当て


     

  6. タスクを実行するには、Approve PO タスクをダブルクリックします。Approve PO ノードが開き、図3-4 に示すように、PO の承認を求めるウィンドウが表示されます。

    図3-4 [Approve PO] ウィンドウ


     

  7. [はい] をクリックするとタスクが承認されます。この質問に対するコールバック アクションにより、Approve PO ノードに完了マークが付きます。

    SOAP over HTTP サンプルでは、以下の処理が実行されます。

    ワークフローは Ack PO ノードに進みます。このノードでは、POAck XML メッセージを com.bea.wli.bpm.WLWResponseQueue に送信します。WLW2BPM Web サービス内の BPMControl コントロールがキューから POAck メッセージを取り出し、WLW2BPM Web サービス内の BPM_onXMLresponse コールバック ハンドラを起動します。このコールバック ハンドラは onXMLresponse ハンドラを呼び出します。呼び出された onXMLresponse ハンドラは、POAck メッセージを com.bea.wli.bpm.EventQueue JMS キューに送信します。

    SendPO ワークフローの Get PO Ack ノードでは、POAck メッセージを取得し、実行を Notify PO Ack ノードに進めます。Notify PO Ack ノードでは、Notify PO Ack タスクを Worklist に割り当てます。図3-5 を参照してください。

    XML over HTTP サンプルでは、以下の処理が実行されます。

    ワークフローは Ack PO ノードに進みます。このノードでは、POAck XML メッセージを jws.queue に送信します。POAck XML メッセージは、SendPO ワークフローのインスタンス ID をメッセージのペイロードに追加します。メッセージには「URI」ヘッダもあり、このヘッダには wlw_bpm_xml/wlw2bpm/WLW2BPM.jws が指定されています。そのため、POAck XML メッセージによって WLW2BPM Web サービスが呼び出されます。

    WLW2BPM Web サービスは POAck メッセージをキューから取り出し、WLW2BPM.sendPOAck メソッドをトリガします。WLW2BPM.sendPOAck メソッドは、BPM2WLW コントロールの sendPOAck メソッドを呼び出し、PO 番号を渡します。

    sendPOAck メソッドは、未加工の XML メッセージを HTTP 経由で BPM2WLW Web サービスに送信します。BPM2WLW Web サービスは、承認を受信すると、POAck メッセージを com.bea.wli.bpm.EventQueue JMS キューに送信します。

    SendPO ワークフローには、POAck メッセージ ペイロード内のインスタンス ID を検索するイベント キーがあります。該当するインスタンス ID がキー値式に含まれるイベントがイベント キューに到着すると、そのインスタンスが Get PO Ack ノードをトリガします。その結果、POAck メッセージが取得され、実行は Notify PO Ack ノードに進みます。このノードでは、Notify PO Ack タスクを Worklist に割り当てます。図3-5 を参照してください。

    図3-5 Notify PO Ack ワークフロー ノードでのユーザへのタスクの割り当て


     

  8. Notify PO Ack タスクをダブルクリックしてタスクを実行します。タスクが Worklist から消え、実行は停止ノードに進みます。これでサンプルは終了です。

  9. Web サービス間で渡されるメッセージを表示するには、次の URL を使用します。

    注意: メッセージ ログが空の場合は、[Web Service] ページの [Message Log] セクションで [Refresh] をクリックします。

  10. メッセージを表示するには、[Message Log] のメッセージをクリックします。

    次の図にメッセージを示します。

    図3-6 Send PO Web サービスのメッセージ ログ − SOAP over HTTP


     

    図3-7 Process PO Web サービスのメッセージ ログ − SOAP over HTTP


     

    図3-8 Send PO Web サービスのメッセージ ログ − XML over HTTP


     

    図3-9 Send PO Web サービスのメッセージ ログ − XML over HTTP


     

 

ページの先頭 前 次