この章では、注文の手動承認または却下を行うユーザー・タスクを追加する方法について説明します。
この章の内容は次のとおりです。
チュートリアルのこのフェーズでは、第10章「データ挿入のためのデータベース・アダプタの設計」で設計したプロセスに処理を追加します。このフェーズを実行する前に、前のフェーズが正常に完了したことを確認してください。このフェーズでは、前のプロジェクトの手順を拡張し、ヒューマン・タスク機能を使用して外部の手動サービスをコールします。 これには、ヒューマン・タスクを処理し、ユーザー処理用に事前定義済(デフォルト)のグラフィカル・ユーザー・インタフェース画面を使用する他のWebサービスへのコールアウトが含まれます。次の主要タスクを実行します。
OrderApprovalという名前のBPELプロセスを新規作成します。
注文の手動承認または却下処理を行うワークフロー機能を追加するBPELプロセスを設計します。
OrderApproval BPELプロセスをデプロイします。
OrderApproval BPELプロセスをOracle BPEL Controlから実行します。
Oracle BPEL WorklistのアプリケーションURLにアクセスし、注文を承認します。
OrderBooking BPELプロセスに戻り、OrderApproval BPELプロセスと相互作用するPOAServiceという名前のパートナ・リンクを作成します。
POAServiceを呼び出すBPELプロセスを設計します。
OrderBooking BPELプロセスをデプロイします。
OrderBooking BPELプロセスをOracle BPEL Controlから実行します。
Oracle BPEL WorklistのアプリケーションURLにアクセスし、注文を承認します。
このセクションには次の項目があります。
このフェーズでは、注文承認という新規プロジェクトを作成し、ヒューマン・ワークフロー・プロセスを定義します。これは順序ワークフローであり、ここで注文が承認または却下されます。 注文は最初にSupervisorロールに割り当てられます。 Supervisorロールを持つユーザーが注文を承認した後、その注文は最終承認のためにそのユーザーのマネージャに送られます。
この項では次のタスクを実行します。
|
概要: BPELプロセスの作成後、OrderBookingPO.xsdスキーマをインポートします。
|
OrderBookingapplicationに、OrderApprovalという名前の非同期BPELプロセスを作成します。
プロジェクトの作成方法は、「Order Bookingプロジェクトの作成およびスキーマのインポート」を参照して再確認してください。
「次へ」をクリックします。
「入力スキーマ要素」の隣の懐中電灯をクリックして、次の場所にあるOrderBookingPO.xsdを参照します。
SOA_Oracle_Home\bpel\samples\tutorials\127.OrderBookingTutorial\
OrderApproval\bpel
タイプの選択ウィンドウが表示されます。
「インポートしたスキーマ」→「OrderBookingPO.xsd」→「PurchaseOrder」の順に開いて選択します。
「OK」をクリックします。
「出力スキーマ要素」の隣の懐中電灯をクリックして、手順4を繰り返します。
「終了」をクリックします。
これで、スキーマがプロジェクトにインポートされました。 OrderBookingPO.xsdが、「アプリケーション・ナビゲータ」の「Order Approval」→「インテグレーション・コンテンツ」→「スキーマ」の下および「構造」セクションの「スキーマ」の下に表示されます。 BPELプロセス(Receiveアクティビティ(receiveInput)およびInvokeアクティビティ(callbackClient))が表示されます。
|
概要: ヒューマン・タスクを定義すると、タスク構成メタデータ・ファイルであるOrderApproval.taskファイルが作成されます。
|
「コンポーネント・パレット」セクションから「Process Activities」を選択します。
「コンポーネント・パレット」セクションからHuman Taskアクティビティを「receiveInput」と「callbackClient」の間にドラッグ・アンド・ドロップします。
「タスク定義の作成」アイコン(2番目のアイコン)をクリックします。
「ヒューマン・タスク名」にOrderApprovalと入力し、「OK」をクリックします。 (デフォルトの場所を使用します。)
OrderApproval.taskファイルが作成されます。
ヒューマン・タスクのエディタが表示されます。
「タイトル」にPurchase Order Approvalと入力します。
「優先度」および「結果」はデフォルトの値を使用します。
「パラメータ」で、ウィンドウの右側の「+」アイコンをクリックします。
タスク・パラメータの追加ウィンドウが表示されます。
「要素」をクリックしてから懐中電灯アイコンをクリックします。
タイプの選択ウィンドウで、「プロジェクトのスキーマ・ファイル」→「OrderBookingPO.xsd」→「PurchaseOrder」の順に開いて選択してから「OK」をクリックします。
パラメータの追加ウィンドウで、「ワークリストにより変更可能」をクリックしてから「OK」をクリックします。
これで、Oracle BPEL Worklist Applicationを使用してタスク・データを変更できるようになります。
「割当ておよびルーティング・ポリシー」セクションで、ウィンドウの右側の「+」アイコンをクリックします。
参加者タイプの追加ウィンドウが表示されます。
「タイプ」は、「管理チェーン」を選択します。
この参加者タイプでは、承認のために管理チェーン階層内の複数のユーザーにタスクがルートされます。
「ラベル」は、Order Approversと入力します。
「名前別」をクリックします。
この例では、タスクをSupervisorグループに割り当て、このタスクを操作するユーザーの1つ上のレベルの管理チェーンを指定します。
「グループID:」では、懐中電灯をクリックしてアイデンティティ・ルックアップ・ダイアログ・ウィンドウを表示します。
使用している統合サーバー接続が選択されていることを確認します。
Oracle BPEL Serverが実行中であることを確認し、「ルックアップ」をクリックして現在システム内にあるすべてのグループのリストを表示します。
「Supervisor」を選択し、「選択」をクリックして「OK」をクリックします。
参加者タイプの追加ウィンドウの「承認者数」セクションで、「チェーン・レベル上げの最大数」フィールドに1を入力します。「OK」をクリックします。
「割当ておよびルーティング・ポリシー」セクションで、「条件付き中途完了の有効化」をクリックします。
中途完了の詳細ウィンドウが自動的に表示されます。
REJECTを選択して「選択済」リストに移動します。「OK」をクリックします。
「ファイル」メイン・メニューから「保存」を選択します。
「OrderApproval.task」の隣の「X」をクリックしてヒューマン・タスクのエディタを閉じます。
|
概要: 各フィールドをBPELプロセスの変数にマップします。 |
OrderApproval.bpelをダブルクリックして、BPELプロセス内のHuman Taskアクティビティ(OrderApproval_1)を表示します。
OrderApproval_1をダブルクリックします。
「タスクのタイトル」フィールドで、式Purchase Order Approvalの最後にforを追加します。
「XPath式ビルダー」を使用するために、右側のアイコンをクリックします。
「BPEL変数」セクションで、「inputVariable」→「ペイロード」→「ns1:PurchaseOrder」→「ns1:CustID」の順に開いて選択します。
「式に挿入」をクリックします。
ns1:CustIDに対応するXPath式が、「式」セクションに表示されます。
「OK」をクリックします。
XPath式がタスク・タイトルの後に付加されます。
「起案者」フィールドに「XPath式ビルダー」を使用するために、右側のアイコンをクリックします。
手順5から7を繰り返して、同じXPath式を「起案者」フィールドに挿入します。
「BPEL変数」列内の懐中電灯アイコンをクリックします。
タスク・パラメータ・ウィンドウが表示されます。
タスク・パラメータウィンドウで、「変数」→「inputVariable」→「ペイロード」→「ns1:PurchaseOrder」の順に開いて選択します。
「式に挿入」をクリックして「OK」をクリックします。
ヒューマン・タスク・ウィンドウで「OK」をクリックします。
「ファイル」メイン・メニューから「保存」を選択します。
|
概要: 自動生成のタスク・フォーム(payload-body.jsp)が作成されます。
|
「アプリケーション・ナビゲータ」で、.taskファイルを含む「OrderApproval」フォルダを右クリックして、「単純タスク・フォームの自動生成」を選択します。
自動生成のタスク・フォーム・ファイルが表示されます。
最上部の「X」記号をクリックしてpayload-body.jspを閉じます。
|
概要: Switchアクティビティにより、考えられる結果、つまり前に指定したApproveやRejectのケースが反映されます。 また、エラー、失効または期限切れなど、その他の結果を表すOtherwiseというケースもあります。 各ケースの内部には、ビジネス・プロセスのモデリングを実行するアクティビティを追加できます。 「copyPayloadFromTask」Assignアクティビティは、ペイロードを元のソースにコピーします。 |
「OrderApproval.bpel」をダブルクリックします。
「taskSwitch」Switchアクティビティを開きます。
Switchアクティビティの「<case Task outcome is APPROVE>」セクションの中の「copyPayloadFromTask」Assignアクティビティの下に、Assignアクティビティをドラッグ・アンド・ドロップします。
Assignアイコンをダブルクリックして、割当てウィンドウを表示します。
「一般」タブをクリックします。
「名前」フィールドにassignOrderApproval1と入力します。
「適用」をクリックします。
「コピー操作」タブをクリックします。
「作成」をクリックして「コピー操作」を選択します。
次の詳細を入力します。
| フィールド | 値 |
|---|---|
| 送信元 | |
|
式 |
|
string('Accepted') |
| 宛先 | |
|
変数 |
|
「変数」→「inputVariable」→「ペイロード」→「ns1:PurchaseOrder」→「ns1:OrderInfo」→「ns1:OrderComments」の順に開いて選択します。
注意: このネームスペースの数値(ns1、ns2など)は変わる場合があります。自動的に表示されるネームスペース値を使用してください。 |
「XPath」フィールドには、次のように設定された式が表示されます。
/ns1:PurchaseOrder/ns1:OrderInfo/ns1:OrderComments
「OK」をクリックして、コピー操作の作成ウィンドウおよび割当てウィンドウを閉じます。
手順3から11を繰り返して「<case Task outcome is REJECT>」セクションの「copyPayloadFromTask」Assignアクティビティの下にAssignアクティビティを作成します。次の内容を除き、前述したものと同じ詳細を入力します。
assignOrderApproval2という名前を付けます。
「式」フィールドをstring('Rejected')に設定します。
手順3から11を繰り返して「<otherwise>」セクションの「copyPayloadFromTask」Assignアクティビティの下にAssignアクティビティを作成します。次の内容を除き、前述したものと同じ詳細を入力します。
assignOrderApproval3という名前を付けます。
「式」フィールドをstring('Rejected')に設定します。
「コンポーネント・パレット」セクションからSwitchアクティビティの下(外)にAssignアクティビティをドラッグ・アンド・ドロップします。
Assignアイコンをダブルクリックして、割当てウィンドウを表示します。
「一般」タブをクリックします。
「名前」フィールドにsetOutputVariableと入力します。
「適用」をクリックします。
「コピー操作」タブをクリックします。
「作成」をクリックして「コピー操作」を選択します。
| フィールド | 値 |
|---|---|
| 送信元 | |
|
変数 |
|
「変数」→「inputVariable」→「ペイロード」→「ns1:PurchaseOrder」の順に開いて選択します。
注意: このネームスペースの数値(ns1、ns2など)は変わる場合があります。自動的に表示されるネームスペース値を使用してください。 |
| 宛先 | |
|
変数 |
|
「変数」→「outputVariable」→「ペイロード」→「ns1:PurchaseOrder」の順に開いて選択します。 |
「OK」をクリックして、コピー操作の作成ウィンドウおよび割当てウィンドウを閉じます。
プロセスは、次のようになります。
「ファイル」メイン・メニューから「保存」を選択します。
「-」記号をクリックして、「taskSwitch」Switchアクティビティを閉じます。
「アプリケーション・ナビゲータ」セクションに移動します。
「OrderApproval」を右クリックします。
「デプロイ」→「my_integration_server_connection」→「defaultドメインにデプロイ」の順に選択します。
これでBPELプロセスがコンパイルされます。 ウィンドウ下部のボタンをクリックしてエラーの有無を確認します。エラーが発生していなければ、デプロイは成功しています。 デプロイに失敗した場合は、手順4を参照してください。
「スタート」→「すべてのプログラム」→「Oracle - Oracle_Home」→「Oracle BPEL Process Manager」→「BPEL Control」の順に選択し、Oracle BPEL Controlにログインします(すでに開いている場合はページをリフレッシュします)。
Oracle BPEL Controlにログインするために次の情報を入力して「ログイン」をクリックします。
| フィールド | 値 |
|---|---|
| ユーザー名 | oc4jadmin
|
| パスワード | password
|
passwordは、インストール時に入力した値です。
「ダッシュボード」タブにTaskActionHandlerおよびTaskManagerサービスが表示されていると、すべてのサービスが実行中です。
「デプロイ済のBPELプロセス」リストでOrderApprovalをクリックします。
「HTMLフォーム」のすべてのフィールドに詳細を入力します。テキスト・エディタを使用して、OrderBookingPO_1.xmlファイルの内容からこれらの詳細をコピーし、貼り付けることもできます。
「XMLソース」ラジオ・ボタンをクリックします。
表示されたフィールドに、OrderBookingPO_1.xmlの内容をコピーして貼り付けます。
「XMLメッセージの転送」をクリックします。
「BPELプロセス」タブに次のようなメッセージが表示されます。
テスト・インスタンスが開始されました
画面上部の「インスタンス」タブをクリックします。
OrderApprovalインスタンスをクリックします。
このインスタンスがアクティブであることを示すメッセージが表示されます。
「スタート」→「すべてのプログラム」→「Oracle - Oracle_Home」→「Oracle BPEL Process Manager」→「Sample Worklist Application」を選択して、Oracle BPEL Worklist Applicationのログイン・ウィンドウにアクセスします。
jcooper/welcome1としてログインします。
承認するタスクの「Actions」で「Claim」を選択します。
「Go」をクリックします。
タスクの詳細およびペイロード情報が表示されます。このタスクは2人のユーザーによって承認されるように構成されているため、このタスクが承認される場合、jcooperのマネージャであるjsteinにルートされます。このタスクが却下された場合、OrderApprovalプロセスでは、このタスクは却下されたものとみなし、処理を完了します。
情報を確認します。たとえば、OrderBookingPO_1.xmlのコンテンツをコピーおよび貼り付けた場合、次の情報が表示されます。
「Task Action」リストから「Approve」を選択し、「Go」をクリックします。
ユーザーjcooperとしてログアウトします。
Oracle BPEL Worklist Applicationにjstein/welcome1としてログインします。
「Actions」リストから「Approve」を選択し、「Go」をクリックします。
処理後、Oracle BPEL Worklist Applicationにはいずれのタスクも表示されません。
ログアウトします。
Oracle BPEL Controlに戻ります。
画面上部の「インスタンス」タブをクリックします。
OrderApprovalインスタンスをクリックします。
このインスタンスが完了したことを示すメッセージが表示されます。
「監査」および「フロー」リンクをクリックし、完了したOrderApprovalの他の詳細を確認します。
|
概要: ここでは、OrderApprovalサービス用のパートナ・リンクを作成します。 |
OrderBookingプロセスが選択されていることを確認してください。
「OrderBooking.bpel」をダブルクリックします。
「コンポーネント・パレット」セクションから「Services」を選択します。
「コンポーネント・パレット」セクションからDesignerのウィンドウの右側にPartnerLinkアクティビティをドラッグ・アンド・ドロップします。
次の値を入力して、OrderApprovalサービス用パートナ・リンクを作成します。
| フィールド | 値 |
|---|---|
| 名前 | POAService |
| WSDLファイル | 「サービス・エクスプローラ」の懐中電灯アイコンをクリックし、BPELサービス→「my_ integration_server_connection」→「プロセス」→「デフォルト」→「OrderApproval」の順に開いて選択することで次のURLにアクセスします。
http://localhost:8888/orabpel/default/OrderApproval/OrderApproval?wsdl 関連項目: サービス・エクスプローラ・ウィンドウでWSDLファイルを追加しようとして解析エラーが表示された場合は、「Oracle JDeveloperのWebブラウザ設定でのホスト名の設定」を参照してください。 |
| パートナ・リンク・タイプ | OrderApproval |
| パートナ・ロール | OrderApprovalProvider |
| マイ・ロール | OrderApprovalRequester |
「OK」をクリックします。
「ファイル」メイン・メニューから「保存」を選択します。
|
概要: ここでは、Scopeアクティビティを作成して、実行する論理的な手順を形成するすべてのアクティビティをグループ化します。 |
「コンポーネント・パレット」セクションから「SelectSupplier」Switchアクティビティの下にScopeアクティビティをドラッグ・アンド・ドロップします。
scopeアイコンをダブルクリックして、Scopeウィンドウを表示します。
「一般」タブの「名前」フィールドにUserApprovalと入力します。
「OK」をクリックします。
このフェーズでは、このScopeアクティビティの中にInvoke、ReceiveおよびAssignアクティビティを作成します。
+記号をクリックして、Scopeアクティビティを開きます。
「ファイル」メイン・メニューから「保存」を選択します。
「コンポーネント・パレット」セクションから「UserApproval」Scopeアクティビティの中にInvokeアクティビティをドラッグ・アンド・ドロップします。
Invokeアイコンをダブルクリックして、Invokeウィンドウを表示します。
次の詳細を入力します。
| フィールド | 値 |
|---|---|
| 名前 | invokePOAService |
| パートナ・リンク | POAService |
「操作」フィールドには、値(initiate)が自動的に入力されます。
表示される変数の作成ウィンドウで「OK」をクリックします。
invokePOAService_initiate_InputVariableという変数が、「入力変数」フィールドに自動作成されます。この変数は、OrderApprovalRequestMessageというメッセージ・タイプに自動的に割り当てられます。
「OK」をクリックします。
「UserApproval」Scopeアクティビティの中の「invokePOAService」Invokeアクティビティの下にReceiveアクティビティをドラッグ・アンド・ドロップします。
Receiveアイコンをダブルクリックして、Receiveウィンドウを表示します。
次の詳細を入力します。
| フィールド | 値 |
|---|---|
| 名前 | receivePOAService |
| パートナ・リンク | POAService |
「操作」フィールドには、値(onResult)が自動的に入力されます。
表示される変数の作成ウィンドウで「OK」をクリックします。
receivePOAService_onResult_InputVariableという変数が、「変数」フィールドに自動的に作成されます。この変数は、OrderApprovalResponseMessageというメッセージ・タイプに自動的に割り当てられます。
「OK」をクリックします。
「ファイル」メイン・メニューから「保存」を選択します。
「コンポーネント・パレット」セクションから「invokePOAService」Invokeアクティビティの上、および「UserApproval」Scopeアクティビティの中にAssignアクティビティをドラッグ・アンド・ドロップします。
Assignアイコンをダブルクリックして、割当てウィンドウを表示します。
「一般」タブの「名前」フィールドにassignPOADataInと入力します。
「適用」をクリックします。
「コピー操作」タブをクリックします。
「作成」をクリックし「コピー操作」を選択して、コピー操作の作成ウィンドウを表示します。
| フィールド | 値 |
|---|---|
| 送信元 | |
|
変数 |
|
「変数」→「inputVariable」→「ペイロード」の順に開いて選択します。 |
| 宛先 | |
|
変数 |
|
「変数」→「invokePOAService_initiate_inputVariable」→「ペイロード」の順に開いて選択します。 |
「OK」をクリックして、コピー操作の作成ウィンドウおよび割当てウィンドウを閉じます。
「ファイル」メイン・メニューから「保存」を選択します。
「コンポーネント・パレット」セクションから「receivePOAService」Receiveアクティビティの下、および「UserApproval」Scopeアクティビティの中にAssignアクティビティをドラッグ・アンド・ドロップします。
Assignアイコンをダブルクリックして、割当てウィンドウを表示します。
「一般」タブの「名前」フィールドにUserResponseと入力します。
「適用」をクリックします。
「コピー操作」タブをクリックします。
「作成」をクリックし「コピー操作」を選択して、コピー操作の作成ウィンドウを表示します。
| フィールド | 値 |
|---|---|
| 送信元 | |
|
変数 |
|
「変数」→「receivePOAService_onResult_InputVariable」→「ペイロード」→「ns1:PurchaseOrder」→「ns1:OrderInfo」→「ns1:OrderComments」の順に開いて選択します。
注意: このネームスペースの数値(ns1、ns2など)は変わる場合があります。自動的に表示されるネームスペース値を使用してください。 |
| 宛先 | |
|
変数 |
|
「変数」→「inputVariable」→「ペイロード」→「ns1:PurchaseOrder」→「ns1:OrderInfo」→「ns1:OrderStatus」の順に開いて選択します。 |
「OK」をクリックします。
「コピー操作」タブで再度「作成」をクリックして「コピー操作」を選択し、コピー操作の作成ウィンドウを表示します。
| フィールド | 値 |
|---|---|
| 送信元 | |
|
式 |
|
concat(bpws:getVariableData('inputVariable','payload','/ns1:PurchaseOrder/ns1:OrderInfo/ns1:OrderComments'), ', User Review Complete') |
| 宛先 | |
|
変数 |
|
「変数」→「inputVariable」→「ペイロード」→「ns1:PurchaseOrder」→「ns1:OrderInfo」→「ns1:OrderComments」の順に開いて選択します。 |
「OK」をクリックして、コピー操作の作成ウィンドウおよび割当てウィンドウを閉じます。
完了後、Designerのウィンドウには次のように表示されます。
「-」記号をクリックして、「UserApproval」Scopeアクティビティを閉じます。
「ファイル」メイン・メニューから「保存」を選択します。
「アプリケーション・ナビゲータ」セクションに移動します。
「OrderBooking」を右クリックします。
「デプロイ」→「my_integration_server_connection」→「defaultドメインにデプロイ」の順に選択します。
要求に応じてプロジェクトのバージョン番号を増やし(たとえば、1.7と入力)、「OK」をクリックします。
これでBPELプロセスがコンパイルされます。 ウィンドウ下部のボタンをクリックしてエラーの有無を確認します。エラーが発生していなければ、デプロイは成功しています。 デプロイに失敗した場合は、手順4を参照してください。
「スタート」→「すべてのプログラム」→「Oracle - Oracle_Home」→「Oracle BPEL Process Manager」→「BPEL Control」の順に選択し、Oracle BPEL Controlにログインします(すでに開いている場合はページをリフレッシュします)。
Oracle BPEL Controlにログインするために次の情報を入力して「ログイン」をクリックします。
| フィールド | 値 |
|---|---|
| ユーザー名 | oc4jadmin
|
| パスワード | password
|
プロセス(OrderApproval、OrderBookingおよびTaskActionHandlerなど、その他の全プロセス)がデプロイされていることを確認します。OrderApprovalでは、SelectManufacturingで使用されている単純なTaskManagerに比べ、より高度なユーザー相互作用のフローを備えたTaskActionHandlerを使用します。
次のいずれかの方法で、適切なOrderBookingバージョンのインスタンスを起動します。
SOA_Oracle_Home\bpel\samples\tutorials\127.OrderBookingTutorial\PracticeFiles\OrderBookingPO_1.xmlを一時ディレクトリ(Windowsオペレーティング・システムの場合はdrive_letter:\temp、UNIXオペレーティング・システムの場合は/temp)にコピーします。
プロセスをクリックし、次のいずれかの方法でデフォルトのグラフィカル・ユーザー・インタフェースで入力を行います。
「HTMLフォーム」のすべてのフィールドに詳細を入力し、「XMLメッセージの転送」をクリックします。
「XMLソース」ラジオ・ボタンをクリックします。テキスト・エディタを使用して、OrderBookingPO_1.xmlファイルの内容をコピーし、表示されるフィールドに貼り付けます。「XMLメッセージの転送」をクリックします。
http://localhost:8888/CreateOrderBookingUIで、提供されているCreateOrderBookingUIアプリケーションを開いて入力し、プロセスを開始します。
OrderBookingプロセスが開始されたことを確認します。
次のグラフィカル・ユーザー・インタフェースで、SelectManufacturingの価格の見積りを入力します。
http://localhost:8888/SelectManufacturingUI
見積りの入力後、プロセス・インスタンスにより、ユーザーの承認サービスがOrderApprovalで呼び出されたかどうか確認します。 Oracle BPEL Controlに移動し、OrderApprovalとTaskActionHandlerの両方のプロセスが開始されたかどうか確認します。
「スタート」→「すべてのプログラム」→「Oracle - Oracle_Home」→「Oracle BPEL Process Manager」→「Sample Worklist Application」を選択して、Oracle BPEL Worklist Applicationのログイン・ウィンドウにアクセスします。
jcooper/welcome1としてログインします。デフォルト・ユーザーは、インストール時に次の構成ファイルで指定されます。
SOA_Oracle_Home\bpel\system\appserver\oc4j\j2ee\home\config\jazn-data.xml
このリストには、ユーザー処理待機中のタスクが表示されます。
「Actions」リストから「Claim」を選択し、「Go」をクリックしてタスクを申告します。
タスクの詳細、コメント・セクションなどを確認します。
「タスク・アクション」リストから「承認」または「却下」を選択してタスクを承認あるいは却下し、「Go」をクリックします。
ユーザーjcooperとしてログアウトします。却下された場合は直接プロセスに戻りますが、承認されたタスクの場合は、次のレベルの承認が必要となります。
jstein/welcome1(手順8でリストしたjazn-data.xml構成ファイルで定義された階層内におけるjcooperのデフォルト・マネージャ)としてログインします。
このリストには、ユーザー処理待機中のタスクが表示されます。
タスクの詳細、コメント・セクションなどを確認します。
「アクション」リストのタスクを承認または却下し、「実行」をクリックします。
jsteinのコメントの後に、jcooperの承認タスクがプロセスに返されます。
Oracle BPEL Control、データベース表またはユーザー指定の一時ディレクトリ(Windowsオペレーティング・システムの場合はdrive_letter:\temp、UNIXオペレーティング・システムの場合は/temp)で、このプロセスの完了を確認します。
注文の手動承認または却下処理を行うユーザー・タスクを追加しました。このフェーズでは、前のプロジェクトの手順を拡張し、ヒューマン・タスク機能を使用して外部の手動サービスをコールしました。これには、ヒューマン・タスクを処理し、ユーザー処理用に事前定義済(デフォルト)のグラフィカル・ユーザー・インタフェース画面を使用する他のサービスへのコールアウトが含まれました。次の主要タスクを実行しました。
OrderApprovalという名前のBPELプロセスを新規作成しました。
注文の手動承認または却下処理を行うワークフロー機能を追加するBPELプロセスを設計しました。
OrderApproval BPELプロセスをデプロイしました。
OrderApproval BPELプロセスをOracle BPEL Controlから実行しました。
Oracle BPEL Worklist ApplicationのURLにアクセスし、注文を承認しました。
OrderBooking BPELプロセスに戻り、OrderApproval BPELプロセスと相互作用するPOAServiceという名前のパートナ・リンクを作成しました。
POAServiceを呼び出すBPELプロセスを設計しました。
OrderBooking BPELプロセスをデプロイしました。
OrderBooking BPELプロセスをOracle BPEL Controlから実行しました。
Oracle BPEL Worklist ApplicationのURLにアクセスし、注文を承認しました。