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

BPM ユーザーズ ガイド

 前 次 目次 PDF で表示  

サンプル ワークフローの実行とモニタ

注意: Worklist クライアント アプリケーションは WebLogic Integration リリース 7.0 より非推奨となりました。代替機能に関する詳細については、『WebLogic Integration リリース ノート』を参照してください。

この節では、WebLogic Integration の Worklist からサンプル ワークフローを実行します。次に、Studio でワークフローの実行中のインスタンスをモニタします。

この節で説明する手順を実行する以前に、以下の作業が完了していることを前提にしています。

注意: Worklist および Studio のモニタ機能がこの節で説明されますが、この節はこれらのチュートリアルではありません。これらのトピックの詳細は、『WebLogic Integration Worklist ユーザーズ ガイド』と、『WebLogic Integration Studio ユーザーズ ガイド』の「ワークフローをモニタする」を参照してください。

 


Worklist アプリケーション内でのワークフローの実行

Order processing Trigger ワークフローには手動による開始が含まれているので、Worklist アプリケーションからこのワークフローを実行できます。このワークフローは次に、Order Processing と Order Fulfillment ワークフローのすべてのタスクを開始します。この節では、以下のことを行います。

Worklist アプリケーションにログ オンする

ユーザ admin を、サンプルワークフロー内で使用されるすべてのロールのメンバーとして定義しているので、admin としてログ オンします。

WebLogic Integration Worklist を起動する手順は、次のとおりです。

  1. 以下のいずれか 1 つを実行します。

    [WebLogic Integrationへのログオン] ダイアログ ボックスが [WebLogic Integration Worklist] アプリケーション ウィンドウの前面に表示されます。

    図7-1 [WebLogic Integrationへのログオン] ダイアログ ボックス


     

  2. [ユーザ名] フィールドに admin と入力します。

  3. [パスワード] フィールドに security と入力します。

    注意: ユーザ名とパスワードは大文字と小文字の区別が必要です。パスワードとユーザ名は、必ず小文字で入力してください。

  4. [Server [:port]] フィールドに、WebLogic Integration サーバ アプリケーションを実行中のシステムを次のように指定します。
    t3://host:7001

    この host とは、コンピュータ名または WebLogic Integration サーバ実行中のシステムの IP アドレスです。サーバが Worklist アプリケーションと同じコンピュータ上で実行中の場合は、localhost と指定します。

  5. [OK] をクリックします。[WebLogic Integration Worklist] ダイアログ ボックスが表示されます。

    図7-2 [WebLogic Integration Worklist] ダイアログ ボックス


     

  6. [OK] をクリックします。[Worklist] のメイン ウィンドウが表示されます。

    図7-3 Worklist アプリケーションのメイン ウィンドウ


     

  7. ウィンドウの最上部にあるドロップダウン リストから [CDExpress] を選択します。その組織のユーザに関連付けられたロールを示すタブが、ユーザ名タブの隣に表示されます。この場合、ロールは、[Accounting]、[CustomerService]、[Shipping] です。

  8. [表示] メニューから、[完了] チェック ボックスをチェックします。これを選択すると、[ワークリスト] ウィンドウに、保留中 と 完了 タスクの両方を表示できます。

サンプル ワークフローを開始する

手動で開始するように作られている Order Processing Trigger ワークフローを開始して、サンプル ワークフローを開始します。このワークフローは、サンプルのメイン ワークフローである Order Processing をオフに設定します。

Worklist ユーザは全員がこのワークフローを開始できます。

[Order Processing Trigger] ウィンドウを開く手順は、次のとおりです。

  1. [ワークフロー(W)|Start a Workflowワークフローを開始(S)] を選択します。[ワークフローを開始] ダイアログ ボックスが表示されます。

    図7-4 [ワークフローを開始] ダイアログ ボックス


     

  2. [オーガニゼーションを選択] ドロップダウン リストで [CDExpress] を選択します。

  3. [開始するワークフローを選択] ウィンドウから [Order Processing Trigger] を選択し、[OK] をクリックします。ワークフローのインスタンスが作成され、ワークフローの開始が成功したことを確認するメッセージが表示されます。


     

    ワークフローの最初のタスクが、ワークフローを開始ユーザに割り当てられるので(詳細は、タスク ノードのプロパティ : Start Order Processing タスク ノードの表示を参照)、次のメッセージも表示されます。


     

  4. [OK] をクリックします。メッセージ ボックスが両方とも終了します。Start Order Processing タスクが Worklist で同じユーザ名の下に表示されます。

    図7-5 Worklist アプリケーションの タスク リスト


     

  5. タスクを実行するには、タスク リスト内のタスクをダブルクリックします。タスクが実行されると、Order Processing ワークフローを開始する XML ドキュメントが作成され、最初のタスクが admin に割り当てられます。

[Start Order Processing] タスクのステータスが完了には変わらないことに注意してください。これは、ワークフローの設計で、ループ メカニズムで指定され、完了ノードが欠落しているので、タスクが無限に割り当てられるためです(タスク ノードのプロパティ : Start Order Processing タスク ノードの表示を参照してください)。

このタスクを実行するたびに、このタスクの別のインスタンスが admin のタスク リストに表示されます。したがって、Order Processing ワークフローを開始しようとするたびに、[ワークフロー] メニューから Order Processing Trigger ワークフローを開始する必要がなく、[ワークリスト] で Start Order Processing タスクをダブルクリックするだけで開始できます。

Order Processing ワークフロー タスクを実行する

Order Processing ワークフローの最初のタスクは信用チェックであり、ユーザ admin に割り当てられました。この節では、Check Customer Credit タスクに対する [はい] の応答以降のワークフロー パスで指定されているすべてのタスクを実行します。

Order Processing ワークフロー タスクを実行する手順は、次のとおりです。

  1. 新しいタスクを通知するメッセージ ボックスで、[OK] をクリックします。

  2. [admin] ユーザ タブで、Check Customer Credit タスクをダブルクリックして、そのタスクを実行します。[Credit Check] メッセージ ボックスが表示されます (このメッセージ ボックスは、XML ドキュメント構造体を定義するでセットアップ済みです)。

    図7-6 [Credit Check] メッセージ ボックス


     

  3. このメッセージ ボックス内で [はい] をクリックします。これで、[ステータス] カラムのチェック マークからわかるように、このタスクに完了のマークが付けられます。

    図7-7 完了マークが付いたタスク


     

ここで、Check Customer Credit タスクが含まれる Order Processing ワークフローのステータスを表示します。[Check Customer Credit] タスクを選択し、[ワークフロー|ワークフローのステータス] を選択します。[ワークフローのステータス] ダイアログ ボックスが表示されます。

図7-8 [ワークフローのステータス] ダイアログ ボックス


 

自動的に行われるタスクである Check Inventory タスクには、完了マークがすでに付いています。在庫チェックを通過すると(このサンプルでは常時行われる)、次のタスクは、Order Fulfillment サブワークフローを自動的に開始する Start Order Fulfillment タスクです。

Order Fulfillment ワークフロー タスクを実行する

ワークフローは Generate Invoice タスクを Accounting ロールに、Ship Order タスクを Shipping ロールに同時に割り当てます。[Accounting] ロール タブと [Shipping] ロール タブを切り替えると、タスクが同時に表示されたことを確認できます。これらのタスクを実行する順序は重要ではありませんが、ここでは出荷タスクから始めます。

Accounting ロールのメンバーとして定義された joe で Worklist にログ オンした場合、Generate Invoice タスクが [Accounting] ロール タブの joe のワークリストにも含まれています。Shipping ロールのメンバーとして定義された mary で Worklist にログ オンした場合、Ship Order タスクも [Shipping] ロール タブの mary のワークリストに含まれます。これらのワークリストからタスクを実行しようとする場合、この 2 人のユーザ名でログ オンし、Worklist の別のインスタンスを開きます。2 人のユーザのパスワードを、password と入力します。

Order Fulfillment ワークフロー タスクを実行する手順は、次のとおりです。

  1. [Shipping] タブを選択します。Ship Order タスクに出荷指示コメントが含まれます。このコメントは、ワークフローのテンプレート定義で指定されたものです。

  2. [Ship Order] タスクをダブルクリックして、このタスクを実行します。

  3. [Accounting] タブを選択します。

  4. [Accounting] タスクをダブルクリックして、このタスクを実行します。

    カスタム例外ハンドラの定義 Bad Data to OrderBean 例外ハンドラで説明したように、このタスクを実行すると、Calculate Total Price ビジネス オペレーションが実行されます。その結果、この操作によって、Order Processing Trigger ワークフローの XML イベントに含まれた不正な KK という州名データが、POBean EJB 上の calculate() メソッドに渡されることになります。次に calculate() メソッドによって、サーバが BadStateException 例外を送出します。

    Order Fulfillment ワークフローは例外を検出するための例外ハンドラを定義するので、Worklist クライアント上では例外に関する表示されません。代わりに、Bad Data to OrderBean 例外ハンドラで定義された XML をクライアントに送信 アクションが指定するメッセージ ボックスが表示されるだけです (詳細については、XML をクライアントに送信 アクションの表示を参照してください)。

    図7-9 [Error Warning] ダイアログ ボックス


     

    再び無効な州データを入力した場合、どうなるかを確認します。

  5. メッセージ ボックス フィールドに、XYZ のような無効データを入力します。同じメッセージが表示されて、再び修正を求められます。

  6. ここで、CA のような有効な 2 文字の州名の略称を入力します。

今度は、Generate Invoice タスクが実行され、完了マークが付けられます。Calculate Total Price ビジネス オペレーションは、注文の合計金額を計算し、値を Order Processing ワークフローに返します。Confirm Order Fulfillment タスクは自動的に実行され、プロセス全体が終了します。

Order Processing ワークフローを定義するときに、電子メール メッセージを送信 アクションを入れると(電子メール メッセージの送信 : Confirm Order Fulfillment タスクの定義を参照してください)、自分が書いたテキストを記した 電子メールを受け取ることになります。

電子メール メッセージを送信 アクションを入れない場合は、以下の節の手順に従って全ワークフロー操作の結果を表示できます。

 


Studio による実行中のワークフローのモニタ

この節では、Order Processing ワークフローに指定された次の 2 つのパスに従って、ワークフローを 2 回実行します。1回目は、Check Customer Credit タスクに いいえ を返し、Order Processing ワークフローを終了する Contact Customer タスクを実行します。2回目は はい を返して、Order Processing ワークフローと Order Fulfillment ワークフロー両方の残りのタスクを実行します。

Worklist 内でワークフローを実行するのと同時に、Studio から実行中のワークフローのインスタンスをモニタします。CDExpress 組織の Worklist と Studio のインスタンスを両方とも開く必要があります。

Order Processing ワークフローのインスタンスの実行とモニタの手順は、次のとおりです。

  1. Worklist で、[admin] タブを選択します。Start Order Processing タスクをダブルクリックします。Order Processing ワークフローが開始します。

  2. Studio で、フォルダ ツリー内の Order Processing のテンプレートを右クリックします。表示されるポップアップ メニューから [インスタンス] を選択します。[ワークフロー インスタンス] ダイアログ ボックスが表示されます。

    2 つのインスタンスが表示されます。1 つ目は、前の章で実行したワークフローで、2 つ目は、今開始したばかりのインスタンスです。Order ID の番号が不得手、現在は 2 になっていることに注目してください。

    図7-10 [ワークフロー インスタンス Order Processing] ダイアログ ボックス


     

  3. インスタンス リストで、[Order 2] をダブルクリックします。[ワークフロー ステータス] ウィンドウが表示されます。

    図7-11 [ワークフロー ステータス Order Processing] ウィンドウ


     

  4. [変数] ボタンをクリックします。ワークフロー変数の現在の設定を表示します。[ワークフロー変数] ウィンドウが表示されます。

    図7-12 [ワークフロー変数] ウィンドウ


     

  5. [閉じる] をクリックして、[ワークフロー変数] ウィンドウを終了します。

  6. [ワークフロー ステータス] ウィンドウを終了します。

  7. [ワークリスト] に切り替えます。

  8. [admin] ユーザ タブで [Check Customer Credit] タスクをダブルクリックして、そのタスクを実行します。

  9. メッセージ ボックスが表示されたら [いいえ] をクリックします。これでフローは、CustomerService ロール(admin はそのメンバー)に割り当てられた Contract Customer タスクに進みます。

  10. [CustomerService] タブをクリックします。[コメント] カラムには、タスクとワークフローのコメントの追加 : Contact Customer タスクの定義で定義した式が表示されます。コメントには、そのタスクを実行する前にユーザが従うべき指示が表示されます。

    図7-13 タスクのコメント


     

  11. タスクをダブルクリックして、このタスクを実行します。これでフローは終了します。Studio に戻り、ワークフロー インスタンスに表示された結果を確認します。

  12. Studio の [ワークフロー インスタンス] ダイアログ ボックスで、[最新の情報に更新] をクリックします。ワークフローが終了したことが表示されています。ここにはワークフローのコメントを設定するで定義したワークフローのコメント Order cancelled が含まれています。


     

  13. [Order 2] インスタンスをダブルクリックします。[ワークフロー ステータス] ウィンドウが表示されます。Contact Customer タスクはグレー表示になっています。


     

  14. [変数] をクリックして、[ワークフロー変数] ダイアログ ボックスを表示します。


     

  15. [閉じる] をクリックして、[ワークフロー変数] ウィンドウを終了します。

  16. [ワークフロー ステータス] ウィンドウを終了します。

ここで、3 回目のワークフローの繰り返しを行い、Credit Check タスクに対して はい を応答後に、終了したワークフローのインスタンスをモニタします。

Order Processing および Order Fulfillment ワークフローの再実行とモニタの手順は、次のとおりです。

  1. [ワークリスト] で、[admin] ユーザ タブを選択します。次に Start Order Processing タスクをダブルクリックします。Order Processing ワークフローが開始します。ここでは Order 3 というラベルが表示されています。

  2. [admin] タブを選択します。次に [Check Customer Credit] タスクをダブルクリックして、そのタスクを実行します。[Credit Check] メッセージ ボックスが再び表示されます

  3. 今回は、[はい] をクリックします。ワークフローは Check Inventory タスクに進みます。

  4. ここで、Studio に切り替えます。

  5. [ワークフロー インスタンス] ダイアログ ボックスで、[最新の情報に更新] をクリックします。新しいインスタンスが表示され、今回は Order 3 となっています。


     

  6. [Order 3] インスタンスをダブルクリックして、[ワークフロー ステータス] ウィンドウを呼び出します。今回のウィンドウでは、Check Customer Credit タスクと Check Inventory タスクはグレー表示されています。


     

  7. ここで、[Vars] をクリックして、[ワークフロー変数] ウィンドウを表示します。


     

  8. [閉じる] をクリックして、[ワークフロー変数] ウィンドウを終了します。

    [Inventory] 変数(536)が、[ItemQuantity] 変数(2)より大きいので、今度は Order Fulfillment ワークフローが開始され、そのインスタンスをモニタできます。

  9. フォルダ ツリーで、Order Fulfillment のテンプレートを右クリックします。表示されるポップアップ メニューから [インスタンス] を選択します。ワークフローの 2 つのインスタンスが表示された [ワークフロー インスタンス Order Fulfillment] ダイアログ ボックスが表示されます。

    図7-14 [ワークフロー インスタンス Order Fulfillment] ダイアログ ボックス


     

  10. [Order 3] をダブルクリックします。[ワークフロー ステータス] ウィンドウが表示されます。

  11. 今回は、[List Instances] ボタン をクリックします。リスト ビューでステータスを確認します。

    図7-15 [ワークフロー ステータス Order Fulfillment] ウィンドウ


     

  12. [変数] をクリックして、[ワークフロー変数] ウィンドウを表示します。


     

  13. [閉じる] をクリックして、[ワークフロー変数] ウィンドウを終了します。

  14. [ワークリスト] ウィンドウに戻ります。

  15. [Shipping] ロール タブを選択します。次に [Shipping] タスクをダブルクリックして、そのタスクを実行します。

  16. [Accounting] タブを選択し、次に [Generate Invoice] タスクをダブルクリックします。[Error Warning] メッセージ ボックスに、CA などの有効な州の略称を入力します。

  17. Studio に戻ります。

  18. [ワークフロー ステータス Order Fulfillment] ウィンドウで [Instance Refresh] ボタン をクリックします。


     

  19. ここで、[変数] をクリックして、[ワークフロー変数] ウィンドウを表示します。


     

  20. [閉じる] をクリックして、ウィンドウを終了します。

  21. [ワークフロー ステータス Order Fulfillment] ウィンドウを終了します。

  22. [ワークフロー インスタンス Order Processing] ダイアログ ボックスで、[最新の情報に更新] をクリックします。ウィンドウは、ワークフローが終了したことを示しています。


     

  23. [Order 3] をダブルクリックして、[ワークフロー ステータス] ウィンドウを確認します。ウィンドウは、ワークフローが終了したことを示しています。


     

  24. [変数] をクリックします。終了したワークフローの変数が表示されます。


     

  25. [ワークフロー変数] ウィンドウを終了して、次に [ワークフロー ステータス] ウィンドウも終了します。

  26. 他に開いているウィンドウがあれば、それも終了します。

これで、Business Process Management のチュートリアルは終了です。

 

ページの先頭 前 次