ヘッダーをスキップ

Oracle Fusion Middleware Adapter for Oracle Applications ユーザーズ・ガイド
11g リリース1 (11.1.1.6.0)
B61389-03
目次へ移動
目次
前のページへ移動
次のページへ移動

ビジネス・イベントの使用

この章の構成は、次のとおりです。

ビジネス・イベントの概要

Oracle Workflowのビジネス・イベント・システム(BES)は、Oracle Advanced Queuing(AQ)のインフラストラクチャを利用して、システム間でビジネス・イベントを交換する、アプリケーション・サービスです。ビジネス・イベント・システムは、イベント・マネージャとワークフロー・プロセス・イベント・アクティビティで構成されます。

イベント・マネージャには、ビジネス・イベントのレジストリ、システム、そのシステム内の名前付き通信エージェント、およびイベントが特定のシステムに重要であることを示すサブスクリプションが含まれます。イベントは、ローカルに発生するか、AQを介して外部システムまたはローカル・システムから受信します。ローカル・イベントが発生すると、サブスクリプションが遅延しないかぎり、イベントを発生させたコードと同じトランザクションでサブスクライブ・コードが実行されます。

サブスクリプションには、次のタイプの処理が含まれます。

各ビジネス・イベントは、統合または拡張ポイントを使用する準備ができていることを示します。現在、Oracle E-Business Suiteには、900を超える事前構成済のビジネス・イベントが付属しています。

ビジネス・イベント・システムの使用には、次のものが含まれます。

ビジネス・イベントの概念

イベント

ビジネス・イベントは、システム内の他のオブジェクトまたは外部エージェントにとって重要な事態が、インターネットまたはイントラネット・アプリケーション、あるいはプログラムで発生することです。たとえば、発注の作成は、購買アプリケーションで発生するビジネス・イベントの例です。

イベント・キー

イベントのインスタンスを一意に識別する文字列です。イベント名、イベント・キーおよびイベント・データをすべて組み合せることで、イベントの内容を表します。

イベント・メッセージ

ビジネス・イベントを通信するための標準のワークフロー構造で、データ型WF_EVENT_Tで定義されます。イベント・メッセージには、イベント・データおよび複数のヘッダー・プロパティ(イベント名、イベント・キー、アドレッシング属性およびエラー情報など)が含まれます。

イベント・アクティビティ

アクティビティとしてモデル化されたビジネス・イベントで、ワークフロー・プロセスに含まれます。

イベント・データ

イベントを表すその他の詳細です。イベント・データはXML文書として構造化できます。イベント名、イベント・キーおよびイベント・データをすべて組み合せることで、イベントの内容を表します。

イベント・サブスクリプション

特定のイベントがシステムにとって重要であることを示し、トリガー・イベントが発生したときに実行される処理を指定する登録です。サブスクリプション処理には、カスタム・コードのコール、ワークフロー・プロセスへのイベント・メッセージの送信、エージェントへのイベント・メッセージの送信が含まれます。

遅延サブスクリプション処理

イベントの発生直後にイベントのサブスクリプションを実行しない場合、サブスクリプションを遅延できます。これにより、コール側アプリケーションに制御を迅速に戻し、コストのかかるサブスクリプション処理をイベント・マネージャが後で実行するように設定できます。

エージェント

エージェントは、システム内の名前付きの通信ポイントです。システム内およびシステム間の通信は、エージェント間でメッセージを送信することで実行されます。1つのシステムで、異なる通信方法を表す複数のエージェントを使用できます。たとえば、1つのシステムで、インバウンドおよびアウトバウンド通信、異なるプロトコルによる通信、異なる伝播頻度による通信、またはその他の通信方法をサポートする個別のエージェントを使用できます。

ビジネス・イベント・グループ

ビジネス・イベント・グループは、個別のビジネス・イベントが複数含まれるイベント・タイプです。イベント・グループを一度定義すると、イベント・グループに登録されていたサブスクリプションは、そのグループ内のいずれかの個別イベントがトリガーされると実行されます。

ビジネス・イベント・グループのサポートにより、イベント・グループに属する別々のビジネス・イベントを、単一のパートナ・リンクを経由して扱えるようになります。イベント・グループ用に作成されたサービスは、グループ内の任意のイベントに対応するペイロードをデキューできます。

イベント・グループの一部であるアウトバウンド・ビジネス・イベントへの既存のパートナ・リンクをサポートするには、回避策に従う必要があります。詳細は、「既存パートナ・リンク経由のビジネス・イベントのサポート」を参照してください。

注意: グループの下の個別イベントがサブスクライブ済の場合、2つのメッセージはWF_BPEL_Qキューにエンキューされます。1つのメッセージしか必要としないユーザーは、WF_BPEL_Qにメッセージをエンキューする個別イベントのサブスクライブを無効にする必要が生じる場合があります。

ビジネス・イベント・グループを使用したパートナ・リンクの作成に関する詳細は、「ビジネス・イベント・グループを使用したパートナ・リンクの作成」を参照してください。

アウトバウンド・ビジネス・イベントの設計時タスク

この項では、ビジネス・イベント・アウトバウンド・サブスクリプションを作成するようにAdapter for Oracle Applicationsを構成するプロセスを説明します。Oracle JDeveloperで「アダプタ構成ウィザード」を使用してAdapter for Oracle Applicationsを構成するために必要な操作について説明します。

同一のビジネス・イベントを使用する複数のBPELプロセス

Adapter for Oracle Applicationsでは、同一のビジネス・イベントを使用する複数のBPELプロセスを処理できます。1つのビジネス・イベントに対してAdapter for Oracle Applicationsが作成するサブスクリプションは、そのサブスクリプションを使用するBPELプロセスの数に関係なく1つのみです。内部的に、このサブスクリプションよってビジネス・イベント・メッセージがマルチ・コンシューマAQに転送されます。各BPELプロセスはイベントに対して固有のコンシューマであるため、キューにメッセージが入れられるとすべてのBPELプロセスが通知されます。したがって、ユーザーは各BPELプロセスに個別にサブスクリプションを作成する必要はありません。必要があるのはイベントに対するサービスを作成することのみで、各BPELプロセスへのメッセージ配信はAdapter for Oracle Applicationsによって処理されます。

たとえば、同一のビジネス・イベント(BE1イベントなど)を使用する3つのBPELプロセス(BPEL1、BPEL2およびBPEL)があるとします。各BPELプロセスについて、Adapter for Oracle Applicationsを使用してBE1イベント用のサービスを作成します。Adapter for Oracle Applicationsにより、3つのBPELプロセス(BPEL1、BPEL2およびBPEL)すべてに対して1つのサブスクリプションが作成されます。このサブスクリプションにより、BE1イベント・メッセージがマルチ・コンシューマAQに入れられます。

実行時、BE1イベントが発生すると、サブスクリプションは3つすべてのBPELプロセスに適用可能であるため、この3つのデプロイされたBPELプロセスはすべてアクティブ化され、同一のBE1イベント・メッセージを受信します。

BPELプロセスを使用したSOAコンポジット・アプリケーションのシナリオ

発注XMLのビジネス・イベントの呼出しを例として説明します。

発注が作成されて承認されると、発注承認済ビジネス・イベントoracle.apps.po.evnt.xmlpoが発生します。このイベントのサブスクリプションがバックグラウンドで作成され、ビジネス・イベントがリスニングされてイベント詳細が取得されます。イベント・データがBPELプロセス・アクティビティによって渡され、出力ファイルとしてXMLファイルに書き込まれます。

BPELプロセスを使用したSOAコンポジット・アプリケーションがデプロイメント後に正常に実行された場合は、発注の承認時の同じ発注情報を出力ファイルから取得する必要があります。

アウトバウンド・ビジネス・イベントを構成する際の前提条件

BPELプロセスを使用したSOAコンポジット・アプリケーションの作成フロー

発注XMLのビジネス・イベントの呼出しのシナリオに従って、次の設計時タスクについてこの章で説明します。

  1. BPELプロセスを使用した新しいSOAコンポジット・アプリケーションの作成

  2. パートナ・リンクの作成

  3. receiveアクティビティの構成

  4. ファイル・アダプタ用パートナ・リンクの追加

  5. invokeアクティビティの構成

  6. assignアクティビティの構成

BPELプロセスを使用した新しいSOAコンポジット・アプリケーションの作成

BPELプロセスを使用した新しいSOAコンポジット・アプリケーションを作成する手順は、次のとおりです。

  1. Oracle JDeveloperを起動します。

  2. 「アプリケーション・ナビゲータ」で「新規アプリケーション」をクリックします。

    「SOAアプリケーションの作成 - アプリケーションの名前付け」ページが表示されます。

    「SOAアプリケーションの作成 - アプリケーションの名前付け」ページ

    図の説明は本文にあります。

  3. 「アプリケーション名」フィールドに適切なアプリケーション名を入力し、「アプリケーション・テンプレート」リストから「SOAアプリケーション」を選択します。

    「次」をクリックします。「SOAアプリケーションの作成 - プロジェクトの名前付け」ページが表示されます。

  4. 「プロジェクト名」フィールドに適切なプロジェクト名を入力します。例: GetPOAckBusinessEvent。

    「SOAアプリケーションの作成 - プロジェクトの名前付け」ページ

    図の説明は本文にあります。

  5. 「プロジェクト・テクノロジ」タブで、「SOA」が「使用可能」テクノロジ・リストから選択されて、「選択済」テクノロジ・リストに表示されていることを確認します。

    「次」をクリックします。「SOAアプリケーションの作成 - SOA設定の構成」ページが表示されます。

    「SOAアプリケーションの作成 - SOA設定の構成」ページ

    図の説明は本文にあります。

  6. 「終了」をクリックします。新しいアプリケーションとSOAプロジェクトが作成されました。これにより、SOAコンポジットが自動的に作成されます。

    「BPELプロセスの作成」ページが表示されます。

    「BPELプロセスの作成」ページ

    図の説明は本文にあります。

  7. 「名前」フィールドに適切なBPELプロセス名を入力します。例: GetPOAckBusinessEvent。

    「テンプレート」フィールドから「サービスを後で定義」を選択します。「OK」をクリックします。

    空のBPELプロセスが作成されます。指定した名前(GetPOAckBusinessEvent.bpelやGetPOAckBusinessEvent.wsdlなど)を使用したbpelおよびwsdlを含む必要なソース・ファイル、およびcomposite.xmlも生成されます。

    空のBPELプロセス

    図の説明は本文にあります。

パートナ・リンクの作成

アウトバウンド・ビジネス・イベントを構成するには、パートナ・リンクを作成して、アウトバウンド・イベントを公開できるようにする必要があります。

このタスクにより、BPELプロセスにパートナ・リンクが追加されます。パートナ・リンクは、パートナ・サービスと相互動作するBPELプロセスのリンク名、タイプおよびロールを定義するものです。

パートナ・リンクを追加する手順は、次のとおりです。

  1. 「コンポーネント・パレット」で「BPELサービス」をクリックします。

    「Oracle Applications」を「BPELサービス」リストからプロセス・ダイアグラムの右側の「パートナ・リンク」スイムレーンにドラッグ・アンド・ドロップします。「アダプタ構成ウィザード」の「ようこそ」ページが表示されます。「次」をクリックします。

  2. 「サービス名」フィールドにサービス名を入力します。例: GetPOApprovalEvent。

    サービス名の入力

    図の説明は本文にあります。

    「次」をクリックします。「サービス接続」ダイアログが表示されます。

    データベース・サービス接続の指定

    図の説明は本文にあります。

  3. データベース接続については次のいずれかのオプションを実行できます。

    注意: Oracle Applicationsを実行しているデータベースに接続する必要があります。

  4. 新規のサービス接続の作成を完了した後、Oracle Applicationsで使用可能なリストを参照してビジネス・イベントを追加できます。

    「次」をクリックします。

    Oracle E-Business Suiteリリース12の場合

    Oracle E-Business Suiteリリース12に接続している場合は、IREPファイルがありませんというダイアログが表示されます。これは、ワークスペース内で接続中のデータベースに対応するOracle Integration Repositoryデータ・ファイルが見つからないことを示します。データファイルがないと、Integration Repositoryツリーの参照や検索がかなり低速になります。データファイルを抽出し、Integration Repositoryデータファイルのローカル・コピーを作成するように選択できます。正常に作成されたローカル・コピーは、次回にアダプタにより自動的に使用され、ローカルIntegration Repositoryからデータが取得されます。

    次のいずれかのオプションを選択できます。

    Oracle E-Business Suiteリリース11.5.9の場合

    Oracle E-Business Suiteリリース11.5.9のインスタンスに接続している場合は、「アダプタ構成ウィザード」でインタフェース・タイプを選択する必要があります。「Workflowビジネス・イベント・システム」を選択して次に進みます。

    「アプリケーション・インタフェース」ダイアログで、「オブジェクト取得」をクリックして「Oracle Applicationsモジュール・ブラウザ」を開きます。

  5. 「Oracle Applicationsモジュール・ブラウザ」は、Oracle Integration Repositoryからのインタフェース・データを、Oracle Applicationアダプタでサポートされるその他のインタフェースに関する情報と組み合せて、ツリー階層を作成します。

    ビジネス・イベントを選択するには、ナビゲーション・ツリーを「製品ファミリ」→「その他インタフェース」→「ビジネス・イベント」→「アウトバウンド」に展開します。方向アウトバウンドは、Oracle E-Business Suiteパースペクティブからになります。この場合は、Oracle Applicationsからビジネス・イベントをリスニングします。適切なビジネス・イベント(oracle.apps.po.event.xmlpoなど)を選択し、「OK」をクリックします。「アプリケーション・インタフェース」ページが開き、選択したビジネス・イベントが表示されます。

    Oracle Applications Module Browserからのビジネス・イベントの選択

    図の説明は本文にあります。

    注意: ビジネス・イベント・グループを使用したパートナ・リンクの作成

    ビジネス・イベント・グループは、Oracle Applications Module Browserの「その他インタフェース」→「ビジネス・イベント」→「アウトバウンド」→「グループ」ノードにあります。

    「グループ」ノードからビジネス・イベント・グループ(oracle.apps.fem.event.group.allなど)が選択されると、イベント・グループの所有者名を含むイベント・グループの詳細情報、生成された機能情報(ある場合)および選択されたイベント・グループに含まれる個別のイベントが、Oracle Applications Module Browserウィンドウの右側ペインににリストされます。

    Oracle Applications Module Browserからのビジネス・イベント・グループの選択

    図の説明は本文にあります。

    さらに、ビジネス・イベント・ペイロードに対しては後で「WFイベント・スキーマ定義」ページで「任意のスキーマ」を選択します。これにより、任意のスキーマのXMLペイロードをイベント・ペイロードに添付できます。また、パートナ・リンクが一度作成されたら、選択中のイベント・グループ(手順10で説明)のJCAプロパティ「MessageSelectorRule」を検証することもできます。

    この機能は、Oracle E-Business Suiteリリース12およびリリース11.5.10に適用されます。ビジネス・イベント・グループの詳細は、「ビジネス・イベント・グループ」を参照してください。

  6. 「OK」をクリックすると、「アプリケーション・インタフェース」ページが表示されます。

    「アダプタ構成ウィザード」 - 「アプリケーション・インタフェース」ページ

    図の説明は本文にあります。

  7. 「アプリケーション・インタフェース」ページで「次へ」をクリックします。ビジネス・イベント・ペイロードの「WFイベント・スキーマ定義」ページが表示されます。

  8. イベント・スキーマの指定

    ビジネス・イベント・ペイロードに使用するオプションとして次のいずれかを指定する必要があります。

    注意: 「スキーマなし」または「任意のスキーマ」オプションを選択した場合、ビジネス・イベントのスキーマ情報をさらに指定する必要はなく、次のステップに進みます。

    ビジネス・イベント・ペイロード・スキーマの選択

    図の説明は本文にあります。

    「スキーマなし」を選択して、「次へ」をクリックします。

  9. ビジネス・イベント・サービスの定義が終了したことを示す「終了」ページが表示されます。

    ウィザードでは、oracle.apps.po.event.xmlpoビジネス・イベント・サービスに対応するGetPOApprovalEvent WSDLファイルを生成します。

    メインの「パートナ・リンクの作成」ダイアログが表示され、新規WSDLファイルが指定されています。

    「適用」をクリックして、「OK」をクリックし、パートナ・リンク構成を完了します。

    パートナ・リンク情報

    図の説明は本文にあります。

    必要なWSDL設定を使用してパートナ・リンクが作成され、プロセス・ダイアグラムの境界領域で新しいアイコンを使用してBPELプロジェクト内に表示されます。

  10. イベント・グループのパートナ・リンクに対するJCAプロパティ「MessageSelectorRule」の検証

    パートナ・リンクを作成するためにビジネス・イベント・グループを選択している場合、SOAの「コンテンツ」フォルダでパートナ・リンク・サービス(GroupBusinessEvent_apps.jcaなど)を選択すると、ビジネス・イベント・グループのJCAプロパティを検証できます。

    図の説明は本文にあります。

    「ソース」タブをクリックして.jcaファイルを表示します。JCAプロパティ「MessageSelectorRule」には次の値が格納されていることに注意してください。

    value="tab.user_data.getvalueforparameter ('GROUP') = 'oracle.apps.fem.event.group.all'"

    図の説明は本文にあります。

receiveアクティビティの構成

次のタスクは、ビジネス・イベントのOracle Applicationアダプタ・サービス用に構成したパートナ・リンクからイベント詳細を受信するように、receiveアクティビティを構成することです。

receiveアクティビティを構成する手順は、次のとおりです。

  1. JDeveloper BPEL Designerの「コンポーネント・パレット」で、BPELサービスとコンポーネントをクリックします。

    「Receive」をBPELアクティビティ・リストからプロセス・ダイアグラムの中央スイムレーンにドラッグ・アンド・ドロップします。

  2. receiveアクティビティを前に作成したパートナ・リンクGetPOApprovalEventにリンクします。

    receiveアクティビティのパートナ・リンクへの関連付け

    図の説明は本文にあります。

    「受信」ダイアログが表示されます。

    receiveアクティビティの構成

    図の説明は本文にあります。

  3. receiveアクティビティの適切な名前を入力します。

    パートナ・リンクがアウトバウンド・ビジネス・イベントで構成されているため、「操作」で自動的に「デキュー」が選択されます。

  4. 「変数」を指定して、パートナ・リンクからメッセージ・データを受信するには、「変数」フィールドの右側にある「作成」アイコンをクリックします。「変数の作成」ダイアログ・ボックスが表示されます。

  5. 「OK」をクリックして、デフォルトの名前を受け入れます。

  6. 「受信」ダイアログで「適用」をクリックし、「OK」をクリックします。

ファイル・アダプタ用パートナ・リンクの追加

アウトバウンド・ビジネス・イベントを構成する場合は、ファイル・アダプタ用にもう1つパートナ・リンクを追加する必要があります。これにより、アウトバウンド・ビジネス・イベントによってデータがXMLファイルに書き込まれます。

ファイル・アダプタ用パートナ・リンクを追加する手順は、次のとおりです。

  1. JDeveloper BPEL Designerの「コンポーネント・パレット」で、「BPELサービス」をクリックします。

    「ファイル・アダプタ」を「BPELサービス」リストからプロセス・ダイアグラムの右側の「パートナ・リンク」スイムレーンにドラッグ・アンド・ドロップします。「アダプタ構成ウィザード」の「ようこそ」ページが表示されます。

    「次」をクリックします。

  2. 「サービス名」ページで、ファイル・アダプタ・サービスの名前を入力します。たとえば、WriteEventDataと入力します。

    サービス名の指定

    図の説明は本文にあります。

  3. ファイル・アダプタ・サービスの名前(WriteEventDataなど)を入力します。

  4. 「次」をクリックします。「アダプタ・インタフェース」ページが表示されます。

    アダプタ・インタフェースの指定

    図の説明は本文にあります。

    「操作およびスキーマから定義(後で指定)」ラジオ・ボタンを選択し、「次へ」をクリックします。

  5. 「操作」ページで、操作タイプを指定します。たとえば、「Write File」ラジオ・ボタンを選択します。この操作タイプは、「操作名」フィールドに自動的に移入されます。

    操作の指定

    図の説明は本文にあります。

  6. 「次へ」をクリックして、「ファイル構成」ページにアクセスします。

    出力ファイルの構成

    図の説明は本文にあります。

  7. 「ディレクトリは次のように指定します」フィールドで、「論理名」ラジオ・ボタンを選択します。「発信ファイルのディレクトリ(論理名)」にoutputDirと入力し、出力ファイルの命名規則(EventAck%yyMMddHHmmss%.xmlなど)を指定します。

    ヒント: パーセント記号(%)を入力する場合、ファイル名の一部として日付変数のリストまたは順序番号変数(SEQ)から選択できます。

    デフォルトの書込み条件「メッセージ数の到達 1」を確認します。

  8. 「次へ」をクリックすると、「メッセージ」ページが表示されます。書き込まれる出力ファイルの場合、スキーマを指定する必要があります。

  9. 「参照」をクリックして、「タイプ・チューザ」にアクセスします。

  10. 「プロジェクトのスキーマ・ファイル」→「APPS_WF_EVENT_T_GetPOApprovalEvent.xsd」をクリックして、ノードを展開します。要素として「WF_EVENT_T」を選択して、「OK」をクリックします。

    選択したスキーマ情報は、「URL」フィールドと「スキーマ要素」フィールドに自動的に移入されます。

    選択したメッセージ・スキーマの移入

    図の説明は本文にあります。

  11. 「次へ」をクリックし、「終了」をクリックします。パートナ・リンクに対応するWSDLファイルが生成されます。メインの「パートナ・リンクの作成」ダイアログ・ボックスが表示され、新規WSDLファイルを指定します。

    パートナ・リンク構成の完了

    図の説明は本文にあります。

  12. 「適用」をクリックし、「OK」をクリックして構成を完了し、ファイル・アダプタ・サービスに必須のWSDL設定を持つパートナ・リンクを作成します。

invokeアクティビティの構成

ファイル・アダプタ用のパートナ・リンクを追加した後、invokeアクティビティをファイル・アダプタ・リンクに関連付けるよう構成する必要があります。

invokeアクティビティによって、出力ディレクトリとして指定したXMLファイルにビジネス・イベント情報を書き込むことができます。

invokeアクティビティを構成する手順は、次のとおりです。

  1. JDeveloper BPEL Designerの「コンポーネント・パレット」で、「BPELアクティビティとコンポーネント」を選択します。

    「invoke」アクティビティを、プロセス・ダイアグラムの中央スイムレーンの「receive」アクティビティの後にドラッグ・アンド・ドロップします。

  2. invokeアクティビティをWriteEventDataファイル・アダプタ・サービスにリンクします。

    invokeのファイル・アダプタ・リンクへの関連付け

    図の説明は本文にあります。

    invokeアクティビティは、パートナ・リンクにイベント・データを送信します。「Invokeの編集」ダイアログが表示されます。

  3. invokeアクティビティの名前を入力し、「入力変数」フィールドの横にある「作成」アイコンをクリックして、新規変数を作成します。「変数の作成」ダイアログが表示されます。

  4. 「グローバル変数」を選択し、変数の名前を入力します。デフォルト名を受け入れることもできます。「OK」をクリックして、「Invokeの編集」ダイアログに戻ります。

    invokeアクティビティの編集

    図の説明は本文にあります。

    「適用」をクリックして、「OK」をクリックし、invokeアクティビティの構成を完了します。

assignアクティビティの構成

assignアクティビティを使用して、receiveアクティビティから出力を取得してinvokeアクティビティに入力します。

assignアクティビティを構成する手順は、次のとおりです。

  1. JDeveloper BPEL Designerの「コンポーネント・パレット」で、「BPELアクティビティとコンポーネント」を選択します。

    「assign」アクティビティを、プロセス・ダイアグラムの中央スイムレーンの「receive」アクティビティと「invoke」アクティビティの間にドラッグ・アンド・ドロップします。

  2. 「Assign」アクティビティをダブルクリックして、「Assignの編集」ダイアログにアクセスします。

    「一般」タブをクリックして、assignアクティビティの名前を入力します。例: setEventData。

  3. 「コピー操作」タブを選択し、「プラス」記号アイコンをクリックして、メニューから「コピー操作」を選択します。「コピー操作の作成」ウィンドウが表示されます。

    コピー操作アクションの指定

    図の説明は本文にあります。

  4. 「From」ナビゲーション・ツリーで、「変数」タイプを選択し、「変数」→「プロセス」→「変数」→「Receive_DEQUEUE_InputVariable」→「WF_EVENT_T」にナビゲートして、「ns4:WF_EVENT_T」を選択します。「XPath」フィールドに選択したエントリが含まれている必要があります。

    コピー操作の定義

    図の説明は本文にあります。

  5. 「To」ナビゲーション・ツリーで、「変数」タイプを選択し、「変数」→「プロセス」→「変数」→「Invoke_Write_InputVariable」→「WF_EVENT_T」にナビゲートして、「ns3:WF_EVENT_T」を選択します。「XPath」フィールドに選択したエントリが含まれている必要があります。

  6. 「OK」をクリックします。

    「適用」をクリックし、「Assignの編集」ダイアログ・ボックスの「OK」をクリックして、assignアクティビティの構成を完了します。

    完了したアウトバウンド・ビジネス・イベントBPELプロセス・プロジェクト

    図の説明は本文にあります。

    「composite.xml」をクリックして、Oracle JDeveloperのコンポジット・ダイアグラムを表示します。

    注意: 「composite.xml」の「ソース」タブをクリックして、参照WriteEventDataの物理ディレクトリoutputDirの値を入力します(/usr/tmpなど)。

    <property name="outputDir" type="xs:string" many="false" override="may">/usr/tmp</property>

    プロパティの物理ディレクトリの指定

    図の説明は本文にあります。

    Oracle JDeveloperのコンポジット・ダイアグラム

    図の説明は本文にあります。

アウトバウンド・ビジネス・イベントの実行時タスク

BPELプロセスを使用したSOAコンポジットを設計したら、それをコンパイル、デプロイおよびテストできます。

  1. BPELプロセスを使用したSOAコンポジット・アプリケーションのデプロイ

  2. BPELプロセスを使用したSOAコンポジット・アプリケーションのテスト

BPELプロセスを使用したSOAコンポジット・アプリケーションのデプロイ

SOAコンポジット・アプリケーションを実行するには、その前にデプロイする必要があります。SOAコンポジット・アプリケーションに含まれるBPELプロセスはコンパイルされてから、接続を確立したアプリケーション・サーバー(Oracle WebLogic Server)にデプロイされます。

前提条件

BPELプロセスを使用したSOAコンポジット・アプリケーションをOracle JDeveloperによってデプロイする前に、次のことを確認する必要があります。

BPELプロセスを使用したSOAコンポジット・アプリケーションをデプロイする手順は、次のとおりです。

  1. JDeveloper BPEL Designerの「アプリケーション・ナビゲータ」で、SOAコンポジット・プロジェクト名(GetPOAckBusinessEventなど)を選択します。

  2. プロジェクト名を右クリックし、表示されるメニューから「デプロイ」→[プロジェクト名]→[serverConnection]を選択します。

    BPELプロセスを使用したSOAコンポジット・アプリケーションのデプロイ

    図の説明は本文にあります。

  3. SOAコンポジット・アプリケーションに含まれるBPELプロジェクトがコンパイルされ、正常にデプロイされます。

    コンパイルおよびデプロイ・メッセージのログ

    図の説明は本文にあります。

BPELプロセスを使用したSOAコンポジット・アプリケーションのテスト

BPELプロセスを使用したSOAコンポジット・アプリケーションを一度デプロイしたら、Oracle Enterprise Manager Fusion Middleware Controlコンソールからプロセスを管理および監視できます。また、プロセスを手動で開始してテストすることもできます。

BPELプロセスを使用したSOAコンポジット・アプリケーションをテストする手順は、次のとおりです。

  1. Oracle Enterprise Manager Fusion Middleware Controlコンソールにナビゲートします(http://<サーバー名>:<ポート番号>/em)。デプロイしたコンポジットが「アプリケーション・ナビゲーション」ツリーに表示されます。

    図の説明は本文にあります。

  2. ユーザー名(weblogicなど)とパスワードを入力して、「ログイン」をクリックし、ファームにログインします。

    複数のターゲットOracle Enterprise Manager Fusion Middleware Controlコンソール・ファームがある場合は、適切なターゲット・インスタンス・ファームを選択する必要がある場合があります。

  3. ファームのベース・ドメインで、「SOA」「soa-infra」を展開して、SOAインフラストラクチャ・ホーム・ページとメニューをナビゲートし、その管理対象サーバーのSOAインフラストラクチャで実行されているデプロイ済のSOAコンポジット・アプリケーションにアクセスします。

    注意: 「ファーム」メニューは常にナビゲータの最上部に表示されます。ナビゲータで「SOA」フォルダを展開し、その下に表示されるリンクをクリックすると、ページの最上部で「SOAインフラストラクチャ」メニューを使用できるようになります。

  4. 「XML Gateway」職責でOracle Applicationsにログオンします。

    これにより、発注に定義された仕入先が有効であるようにXML Gateway取引先が適切に設定されていることを確認できます。

  5. ナビゲーション・メニューから「取引先の定義」を選択して、「取引先の設定」ウィンドウにアクセスします。

  6. 次のように、「取引先設定」フォームでヘッダー値を入力します。

  7. 次の取引先の詳細を入力します。

    「取引先の設定」フォーム

    図の説明は本文にあります。

    取引先の詳細を保存します。

  8. 「購買、Visionオペレーション (USA)」を選択して職責を切り替え、ナビゲーション・メニューから「発注」フォームを選択します。

    「発注」フォームとともにOracle Applicationsフォームが表示されます。

  9. 「発注」ウィンドウで以前に定義した取引先を反映するヘッダー値を使用して発注を作成します。

  10. 「明細」タブで、次の値を使用してデータ行を入力します。

  11. 発注を保存します。発注のステータスは「未完了」になっています。

    発注の設定

    図の説明は本文にあります。

  12. 「承認」をクリックします。「ドキュメントの承認」フォームが表示されます。

    発注の承認

    図の説明は本文にあります。

    「OK」をクリックして、承認を確定します。

    注意: 取引先が設定され有効になっているため、送信方法は自動的にXMLに設定されます。

    発注のステータスは「承認」に変更されました。将来参照するために、「発注、改訂」フィールドの値(たとえば、この場合には発注番号4449)を記録します。

    発注が承認されると、ビジネス・イベントoracle.apps.po.event.xmlpoが発生します。

  13. WF_Deferred Agent Listenerがターゲット・データベースで実行中であることを確認する手順は、次のとおりです。

    1. Oracle Applicationsに「システム管理者」職責でログインします。

    2. Oracle Applicationsホーム・ページで、「ワークフロー管理者Webアプリケーション」職責を選択します。メニューから、「Oracle Applications Manager」→「ワークフロー・マネージャ」を選択します。

      Oracle Applicationsの管理

      図の説明は本文にあります。

    3. 「アプリケーション・マネージャ」ページで、「エージェント・リスナー」アイコンをクリックします。「サービス・コンポーネント」ページが表示され、インストール済のエージェント・リスナーのリストが表示されます。

      エージェント・リスナー・ステータスの確認

      図の説明は本文にあります。

    4. ワークフロー遅延エージェント・リスナーのステータスが「実行中」になっていることを確認します。

  14. ここで、OAコンポジット・アプリケーションに含まれるデプロイ済BPELプロセスは、oracle.apps.po.event.xmlpoビジネス・イベントをリスニングします。イベントが発生してからBPELプロセスがアクティブ化するまで2から3分かかります。

  15. 書込み操作に指定したディレクトリ(outputDir、通常はc:\tempの下)に移動します。出力ファイル(EventAck%yyMMddHHmmss.xmlなど)を開き、発注番号が承認済の発注の番号と同じであることを確認します。

    出力の発注番号の確認

    図の説明は本文にあります。

トラブルシューティング

ビジネス・イベント・システム統合で問題が発生した場合は、次のトラブルシューティング手順を確認します。