この章では、次の例について説明します。
この章に示すシナリオの前提条件は、次のとおりです。
前提条件
インストールおよび構成要件は、次のとおりです。
OracleAS Adapter for PeopleSoftがOracle Application Serverにインストールされていること。
Oracle BPEL PMサーバーが正しく構成され、稼働していること。
Oracle JDeveloperが正しくインストールされていること。
参照: 『Oracle Application Server Adapter インストレーション・ガイド』 |
この章の各例は、PeopleSoftとサービスおよびイベントとの統合を具体的に示すために必要な構成手順を表しています。 先に進む前に、次の方法をよく理解しておく必要があります。
J2CA構成の作成方法(BPEL PMはJ2CA Connectorのみと互換であるため)。 詳細は、「J2CA用の構成の作成」を参照してください。
Application Explorerを使用してサービスとイベント用にOracleAS Adapter for PeopleSoftを構成する方法。 詳細は、第2章「OracleAS Adapter for PeopleSoftの構成」を参照してください。
参照: 『Oracle BPEL Process Manager開発者ガイド』 |
Oracle BPEL Process Managerとアダプタの統合は、次のように2ステップのプロセスです。
設計時: Application Explorerで、OracleAS Adapter for PeopleSoftをサービスおよびイベント用に構成します。詳細は、第2章「OracleAS Adapter for PeopleSoftの構成」を参照してください。 統合ロジックはJDeveloperを使用してモデル化されます。
実行時: JDeveloperで設計したBPELプロセスをデプロイした後、サービス構成をテストしたり、新規に受信したイベントをBPELコンソールで表示できます。
このトピックでは、PeopleSoftサービスの統合について説明します。 設計時構成とランタイム構成についても説明します。
PeopleSoftサービスの統合プロセスを設計する前に、Application Explorerを使用して対象のWSDLファイルを生成する必要があります。
リクエスト-レスポンスJ2CAサービス用WSDLの生成
Application Explorerでアウトバウンド相互作用に使用するWSDLを生成する手順は、次のとおりです。
「アプリケーション・エクスプローラ」を起動し、定義済のPeopleSoftターゲットに接続するか、新規ターゲットを作成します。
詳細は、「PeopleSoftに対するターゲットの定義」を参照してください。
接続先となるPeopleSoftターゲットを開きます。
「コンポーネント・インタフェース」を開き、「LOCATION」を選択します。
「LOCATION」を右クリックします。
次のメニューが表示されます。
「アウトバウンドJCAサービスの作成(リクエスト/レスポンス)」をクリックします。
「WSDLのエクスポート」ダイアログ・ボックスが表示されます。
「OK」をクリックします。
これでJDeveloperでBPELプロセスを設計できます。
BPEL PMサーバー接続の作成
アウトバウンドBPELプロセスを設計する前に、Oracle JDeveloperで新規のアプリケーション・サーバーおよび統合サーバー接続を構成する必要があります。 詳細は、第4章「Oracle BPEL Process Managerとの統合」を参照してください。
同期BPELプロセス用のBPELプロジェクトの作成
同期BPELプロセス用のBPELプロジェクトを作成する手順は、次のとおりです。
左上ペインの上部で「アプリケーション・ナビゲータ」タブをクリックしてアプリケーションを選択します。
アプリケーションを右クリックして「新規プロジェクト」を選択します。
「項目」リストから「BPELプロセス・プロジェクト」を選択し、「OK」をクリックします。
「BPELプロセス・プロジェクト」ダイアログ・ボックスが表示されます。
次の手順を実行します。
BPELプロセスの名前を指定します。
「ネームスペース」フィールドが自動的に更新されます。
「テンプレート」リストから「同期BPELプロセス」を選択します。
「OK」をクリックします。
LOCATIONアウトバウンド・サービス用のBPELプロセスの設計
右側の「サービス」ペインから、パートナ・リンクをビジュアル・エディタにドラッグ・アンド・ドロップします。
「パートナ・リンクの作成」ダイアログ・ボックスが表示されます。
「サービス・エクスプローラ」アイコン(「WSDLファイル」フィールドの上にある左から2番目のアイコン)をクリックします。
「サービス・エクスプローラ」ダイアログ・ボックスが表示されます。
「アダプタ・サービス」の下で、新規接続、「アダプタ」および「アプリケーション」を順番に開きます。
「サービス・エクスプローラ」ダイアログ・ボックスのWSDLツリーには、Application Explorerを使用して作成したWSDLファイルがすべて表示されます。 WSDLツリーはWSDLサーブレットにより生成され、WSDLサーブレットはBPEL Serverインストールの一環として自動的にデプロイされます。
「LOCATION_invoke.wsdl」を選択して「OK」をクリックします。
「パートナ・リンクの作成」ダイアログ・ボックスの「WSDLファイル」フィールドに、選択したWSDLファイルの名前と場所が表示されます。 「パートナ・リンク・タイプ」フィールドで、WSDLファイルに定義されているパートナ・リンクを指定します。
次の手順を実行します。
「マイ・ロール」フィールドを未指定のままにしておきます。 パートナ・リンクはBPELプロセスから同期的に起動されるため、そのロールはNULLです。
「パートナ・ロール」リストから、デフォルト値の「LOCATIONRole」を選択します。 これはBPELプロセスのロールです。
「OK」をクリックします。
「ファイル」→「保存」を選択します。
右側の「プロセス・アクティビティ」ペインから、Invokeアクティビティをビジュアル・エディタにドラッグし、Receiveアクティビティ(receiveInput
)とReplyアクティビティ(replyOutput
)の間に置きます。
次のダイアグラム・ビューにInvokeプロセス・アクティビティを示します。
Invoke_1からの青い矢印をドラッグし、PeopleSoftパートナ・リンクに接続します。
次の手順を実行します。
「入力変数」フィールドの右にある最初のアイコンをクリックし、表示される「変数の作成」ウィンドウで「OK」をクリックします。
手順a.を繰り返して、「出力変数」のデフォルト変数を作成します。
「OK」をクリックします。
Assignプロセス・アクティビティをドラッグし、receiveInput
とInvoke_1
の間にドロップします。
次の図に、JDeveloperビジュアル・エディタでの新規Assignアクティビティを示します。
Assignアクティビティのアイコンをダブルクリックします。
「コピー操作」タブで、「作成」をクリックして「コピー操作」を選択します。
「コピー操作の作成」ダイアログ・ボックスが表示されます。 次の手順を実行します。
「From」ペインで、「変数」と「inputVariable」を順番に開き、「payload」を選択します。
「To」ペインで、「変数」と「Invoke_1_LOCATION_InputVariable」を順番に開き、「input_LOCATION」を選択します。
「コピー操作の作成」ダイアログ・ボックスは次のようになります。
「コピー操作の作成」ダイアログ・ボックスと「Assign」ダイアログ・ボックスを閉じて、「OK」をクリックします。
右側の「プロセス・アクティビティ」ペインから、Assignアクティビティをもう1つビジュアル・エディタにドラッグし、Invokeアクティビティ(Invoke_1
)とReplyアクティビティ(replyOutput
)の間に置きます。
Assignアクティビティのアイコンをダブルクリックし、「作成」をクリックします。
「コピー操作の作成」ダイアログ・ボックスで、「Invoke_1_LOCATION_OutputVariable」、「output_LOCATION」を、「outputVariable」、「payload」にマップします。
すべての変数を次のようにマップしたことを確認します。
「OK」をクリックし、再度、「OK」をクリックします。
「ファイル」→「保存」を選択します。
これでBPELプロセスの設計が完了しました。
LOCATIONアウトバウンド・サービス用のBPELプロセスのデプロイ
JDeveloperでは、アウトバウンドBPELプロセスがOracle BPELコンソールに直接デプロイされます。
JDeveloperでBPELプロセスをデプロイする手順は、次のとおりです。
「デプロイ」、作成したBPEL PMサーバー接続および「デフォルト・ドメインにデプロイ」を順番に選択します。
デプロイメント・プロセスが自動的に開始されます。
ウィンドウの下部にある「メッセージ」のログを調べます。
「メッセージ」のログにデプロイ・ステータスが表示されます。 この例は、プロセスのデプロイ成功メッセージを示しています。
デプロイに失敗した場合は、「コンパイラ」タブをクリックして、デプロイメント・プロセス中に生成されたエラーと警告をすべて表示します。
Oracle BPELコンソールからLOCATIONプロセスを起動する手順は、次のとおりです。
ブラウザに次のURLを入力して、Oracle BPELコンソールを起動します。
http://host:port/BPELConsole
有効なパスワードを入力します。
Oracle BPELコンソールのメイン・ページが表示されます。
次の手順を実行します。
「テスト・インスタンスを起動しています」リストから「XMLソース」を選択します。
XML入力用に用意されているテキスト領域に、次のコードを入力します。
<?xml version="1.0" encoding="UTF-8"?> <PS8 SERVICENAME="LOCATION" METHODNAME="LOCATION" LICENSE="test"> <component perform="browse">LOCATION</component> <key name="SETID">SHARE</key> <key name="LOCATION">ALBERTA</key> </PS8>
「XMLメッセージの転送」をクリックします。
PeopleSoftシステムから受信したレスポンスが、「開始」ウィンドウに表示されます。
このトピックでは、PeopleSoftイベントの統合について説明します。 設計時構成とランタイム構成についても説明します。
イベントごとに個別のチャネルを作成し、Application Explorerを使用してインバウンド相互作用に使用するWSDLを生成するときに、そのチャネルを選択する必要があります。
注意: 複数のイベントが同一チャネルを共有している場合、イベント・メッセージを正しいBPELプロセスに配信できない場合があります。 |
チャネルの作成
チャネルを作成する手順は、次のとおりです。
「イベント」ノードをクリックします。
「PeopleSoft」ノードを開きます。
左ペインに「ポート」および「チャネル」ノードが表示されます。
「チャネル」を右クリックして「チャネルの追加」を選択します。
「チャネルの追加」ダイアログ・ボックスが表示されます。
次の情報を入力します。
チャネル名(PSFT_Channelなど)を入力します。
簡潔な説明を入力します(オプション)。
「プロトコル」リストから「HTTPリスナー」を選択します。
「次へ」をクリックします。
表示された基本ダイアログ・ボックスに、次の表に示すシステム情報を入力します。
パラメータ | 説明 |
---|---|
リスナー・ポート | PeopleSoftイベント・データをリスニングするポート。 |
Https | セキュアHTTP接続の場合は、「Https」チェック・ボックスを選択します。 |
同期タイプ | 次の同期オプションから選択します。
重要: 同期タイプがREQUESTに設定されている場合、PeopleSoftチャネルは動作しません。 |
「OK」をクリックします。
チャネルが左ペインの「チャネル」ノードの下に表示されます。 アイコン上に表示される「X」は、そのチャネルが切断状態になっていることを示します。
イベント通知用WSDLの生成
チャネルを作成し、開始していないことを確認した後、Application Explorerを使用してイベント用のWSDLを生成する必要があります。
Application Explorerを起動します。
「PeopleSoft」を開きます。
「PeopleSoft」ノードの下に表示されるターゲット名(PSFTtargetなど)をクリックします。
接続パラメータを確認し、必須パスワードを入力します。
ターゲット名を右クリックして「接続」を選択します。
「x」アイコンが表示されなくなります。これは、ターゲットが接続状態であることを示します。
「メッセージ」を開いて「LOCATION_SYNC.VERSION_1」を選択します。
「LOCATION_SYNC.VERSION_1」を右クリックします。
「インバウンドJCAサービスの作成(イベント)」を選択します。
「WSDLのエクスポート」ダイアログ・ボックスが表示されます。
次の手順を実行します。
「WSDLファイル名」フィールドで、WSDLファイルの名前と場所を指定します。
「チャネル」リストから、このインバウンド・サービス用に作成したチャネルを選択します。
重要: イベントごとに個別チャネルを作成する必要があります。 実行時の前に、チャネルが停止していることを確認してください。
BPEL PMサーバー接続の作成
Application Explorerで生成したWSDLを使用してBPELプロセスを設計する前に、Oracle JDeveloperで新規のアプリケーション・サーバーおよび統合サーバー接続を構成する必要があります。 詳細は、第4章「Oracle BPEL Process Managerとの統合」を参照してください。
LOCATION_SYNC.VERSION_1インバウンド・サービス用のBPELプロセスの設計
インバウンド相互作用に使用するBPELプロセスを設計する手順は、次のとおりです。
左上ペインの上部で「アプリケーション・ナビゲータ」タブをクリックしてアプリケーションを選択します。
アプリケーションを右クリックして「新規プロジェクト」を選択します。
「項目」リストから「BPELプロセス・プロジェクト」を選択し、「OK」をクリックします。
「BPELプロセス・プロジェクト」ダイアログ・ボックスが表示されます。
次の手順を実行します。
プロジェクト名(PSoftTLOCATION_inboundなど)を指定します。
「ネームスペース」フィールドが自動的に更新されます。
「テンプレート」リストから「空のBPELプロセス」を選択します。
「OK」をクリックします。
右側の「サービス」ペインから、パートナ・リンクをビジュアル・エディタにドラッグ・アンド・ドロップします。
「パートナ・リンクの作成」ダイアログ・ボックスが表示されます。
「サービス・エクスプローラ」アイコン(「WSDLファイル」フィールドの上にある左から2番目のアイコン)をクリックします。
「サービス・エクスプローラ」ダイアログ・ボックスが表示されます。
新規接続、「アダプタ」および「アプリケーション」の順に開きます。
WSDLツリーに、Application Explorerを使用して作成したWSDLファイルが表示されます。 WSDLツリーはWSDLサーブレットにより生成され、WSDLサーブレットはBPEL Serverインストールの一環として自動的にデプロイされます。
「LOCATION_SYNC.VERSION_1_receive.wsdl」を選択し、「OK」をクリックします。
「パートナ・リンクの作成」ダイアログ・ボックスが表示されます。
「WSDLファイル」フィールドに、選択したWSDLファイルの名前と場所が表示されます。 「パートナ・リンク・タイプ」フィールドで、WSDLファイルに定義されているパートナ・リンクを指定します。
次の手順を実行します。
「マイ・ロール」リストで、デフォルト値の「LOCATION_SYNC.VERSION_1Role」を選択します。
「パートナ・ロール」フィールドを未指定のままにしておきます。
「適用」、「OK」を順番にクリックします。
ビジュアル・エディタに新規のPSFT_PL1パートナ・リンクが表示されます。
右側の「プロセス・アクティビティ」ペインから、Receiveアクティビティをビジュアル・エディタにドラッグし、「アクティビティをここにドロップ」というラベルで示されたプレースホルダ内に置きます。
ReceiveアクティビティをPSoft_PL1パートナ・リンクに接続します。
「Receiveの編集」ダイアログ・ボックスが表示されます。
次の手順を実行します。
Receiveアクティビティの名前(Receive_LOCATIONなど)を指定します。
「変数」フィールドの右にある最初のアイコンをクリックし、表示される「変数の作成」ダイアログ・ボックスで「OK」をクリックします。
「インスタンスの作成」チェック・ボックスが選択されていることを確認します。
「適用」をクリックします。
「OK」をクリックします。
「ファイル」→「保存」を選択します。
LOCATION_SYNC.VERSION_1インバウンド・サービス用のBPELプロセスのデプロイ
ここでは、PeopleSoftでイベントをトリガーし、OracleAS Adapter for PeopleSoftを使用してイベントの統合を確認する方法について説明します。
PeopleSoftにおけるイベントのトリガーによるイベントのランタイム統合のテスト
PeopleSoftでイベントをトリガーする手順は、次のとおりです。
PeopleSoftにログインし、「PeopleTools」、「Integration Broker」、「Node Definitions」の順番に選択します。
使用するノード名(EXTERNAL
など)を入力して「Search」をクリックします。
「Connectors」タブをクリックします。
「Connector ID」フィールドにHTTPTARGETと入力し、「PRIMARYURL」フィールドにリスナーのURLとポートを入力します。
この構成を保存するには「Save」をクリックします。
左ペインの「Menu」から、「Set Up Financials/Supply Chain」、「Common Definitions」、「Location」、「Location」の順番に選択します。
更新するロケーション・レコードを検索するには、「Search」をクリックして変更し、「Save」をクリックします。
変更内容が保存されると、イベントがトリガーされてリスナーに送信されます。
結果の検証
結果を検証する手順は、次のとおりです。
次のURLでOracle BPELコンソールにログインします。
http://host:port/BPELConsole
有効なユーザー名とパスワードを入力します。
「インスタンス」タブをクリックします。
「インスタンス」タブに、最後に受信したランタイム・イベントが表示されます。