Business Integration Connect に付属の PIP サンプルは、WebSphere InterChange Server をバックエンド・アプリケーションとしてインプリメントする場合に、メッセージ交換のために Business Integration Connect および WebSphere Interchange Server をセットアップする方法を示します。また、コミュニティー参加者からメッセージを送受信するときの Business Integration Connect の振る舞いや添付ファイルの処理方法も理解できます。
PIP サンプルでは、3 つのシナリオがサポートされています。第 1 のシナリオでは、Business Integration Connect が 2 つのアクション PIP を処理する方法を説明します。2 番目のシナリオは最初のシナリオの続きで、PIP のキャンセルについて説明します。3 番目のシナリオでは、Business Integration Connect が添付ファイルを持つ 1 つのアクション PIP を処理する方法を説明します。
WebSphere InterChange Server についての追加情報は、「Integration Overview」を参照してください。
シナリオでは、すべて同じトポロジーを使用します。システム A には WebSphere InterChange Server が設定され、バックエンド・アプリケーションおよびコミュニティー参加者の役割を果たします。あるプロセス (バイヤー・プロセス) が PIP を開始し、別のプロセス (セラー・プロセス) が PIP を受け取ります。
システム B には、PIP リクエスターの役割を果たす Business Integration Connect Enterprise Edition が設定されています。このシステムは、システム A のバイヤー・プロセスから PIP の内容を受け取り、PIP メッセージをシステム C に送信します。システム C には、PIP レスポンダーの役割を果たす Business Integration Connect Enterprise Edition が設定されています。システム C はシステム B から PIP メッセージを受け取り、その内容をシステム A のセラー・プロセスに受け渡します。
以下の図はトポロジーを示します。
シナリオ 1 では、Business Integration Connect が送信側と受信側として 2 つのアクション PIP を処理する方法について説明します。以下の図は、このシナリオにおけるシステム間の PIP メッセージまたは PIP の内容メッセージのフローを示します。
シナリオは、バックエンド・アダプターに接続されたポートから 3A4 要求ビジネス・オブジェクトを受け取る、WebSphere InterChange Server のバイヤー・プロセスから開始します。バイヤー・プロセスは 3A4 要求メッセージを作成し、メッセージの Backend Integration ヘッダーに固有の ID (x_aux_process_instance_id と x_aux_system_msg_id) を設定します。バイヤー・プロセスは、これらの ID を要求メッセージの状況とともに保持します。
バイヤー・プロセスは、バイヤーのゲートウェイとして構成されている Business Integration Connect インスタンスに JMS で要求を送信します。これはシステム B にあるインスタンスです。このインスタンスは、RNIF 2.0 対応の 3A4 PIP を生成し、それをセラーのゲートウェイに送信します。このゲートウェイは、システム C にある Business Integration Connect インスタンスです。セラーの Business Integration Connect は RNIF 要求メッセージを受け取り、それを検証してバイヤーのゲートウェイに確認通知シグナルを送信します。バイヤーの Business Integration Connect は、statusCode 100 の EventNotification メッセージを WebSphere InterChange Server のバイヤー・プロセスに送信します。バイヤー・プロセスは、PIP トランザクションの状況を更新します。
セラーの Business Integration Connect は、3A4 の内容を Backend Integration パッケージにパッケージして、このメッセージを WebSphere InterChange Server で実行中のセラー・プロセスに送信します。セラー・プロセスは、Backend Integration パッケージ内の ID を保管し、バックエンド・アダプターに接続されているポートに要求を送信します。
バックエンド・アダプターは、PIP 3A4 応答メッセージを非同期的にセラー・プロセスに送信します。セラー・プロセスはデータベースから固有の ID (x_aux_process_instance_id と x_aux_system_msg_id) を検索し、それらの ID を持つ応答メッセージを取り込みます。セラーは応答メッセージをセラーの Business Integration Connect に送信し、Business Integration Connect はその応答を RNIF 形式にパッケージして、バイヤーのゲートウェイに送信します。
バイヤーの Business Integration Connect は応答を検証し、確認通知をセラーのゲートウェイに送信します。ゲートウェイは、statusCode 100 のイベント通知メッセージを WebSphere InterChange Server のセラー・プロセスに送信します。バイヤーの Business Integration Connect は、PIP 3A4 応答メッセージを非同期的に WebSphere InterChange Server のバイヤー・プロセスに送信します。バイヤー・プロセスは、PIP トランザクションの状況を更新し、バックエンド・アダプターに接続されているポートに応答メッセージを送信します。
シナリオ 2 はシナリオ 1 の続きです。以下の図は、シナリオ 1 のメッセージングと、PIP のキャンセルに使用するメッセージングであるシナリオ 2 を示します。
バイヤー・プロセスは、バックエンド・アダプターに接続されているポートに応答メッセージを送信した後、バイヤー・プロセスのバックエンドからキャンセル・イベントを受け取ります。バイヤー・プロセスは、PIP トランザクションの状況を 800 に更新します。次に、バイヤー・プロセスは以下の情報を持つイベント通知メッセージを取り込みます。
フィールド | 値 |
StatusMessage | 3A4 PIP 要求を送信したアプリケーションが要求をキャンセルしたことを示すテキスト |
StatusCode | イベント通知メッセージが PIP をキャンセルすることを示す「800」 |
EventMessageID | このイベント通知メッセージの ID |
BusinessObjectID | キャンセルする PIP 要求の ID。これは、メッセージ・メタデータの保管に使用するデータベース・テーブルの Documentid 列の値です。 |
GlobalMessageID | PIP 要求メッセージの ID。これは、メッセージ・メタデータの保管に使用するデータベース・テーブルの Msgid 列の値です。 |
次に、バイヤー・プロセスはイベント通知メッセージをゲートウェイに送信します。バイヤーの Business Integration Connect インスタンスがイベント通知メッセージを受け取り、そのメッセージを基に 0A1 PIP を生成します。インスタンスは、0A1 PIP をセラーのゲートウェイに送信します。セラーの Business Integration Connect インスタンスが PIP 0A1 メッセージを受け取り、それを処理のためにセラーに送信します。
シナリオ 3 では、Business Integration Connect が添付ファイル付きの PIP を処理する方法を説明します。バイヤー・プロセスのバックエンド・アダプターから要求メッセージが到着するとき、添付ファイルが含まれることがあります。添付ファイルは、WebSphere InterChange Server がパススルーするファイルである場合や、WebSphere InterChange Server ビジネス・オブジェクトの XML 表現である場合があります。このシナリオでは、それぞれのタイプの添付ファイルの例を示します。ファイル添付の場合、WebSphere InterChange Server はファイルを読み取り、Base64 エンコードを行います。次に、WebSphere Interchange Server は、エンコードされた添付ファイルの内容を、以下の図の行 5.1.1 に示す defaultAttachment として保管します。
ビジネス・オブジェクトの添付の場合、WebSphere InterChange Server は、未変更のまま上記の図の attachmentOne として保管します。
バイヤー・プロセスは、要求を添付ファイルとともにバイヤーのゲートウェイに送信します。バイヤーの Business Integration Connect インスタンスは PIP を生成し (添付ファイルを含む)、それをセラーのゲートウェイに送信します。セラーの Business Integration Connect インスタンスは、要求とその添付ファイルをセラーの WebSphere InterChange Server に送信します。セラーの WebSphere InterChange Server では、添付データ・ハンドラーが BCG_Persons 添付ファイルをビジネス・オブジェクトに変換します。
セラー・プロセスは defaultAttachment を検索し、添付ファイルをデコードし、添付ファイル・ディレクトリーに保管します。バックエンド・アダプターへのメッセージを組み立てるとき、セラー・プロセスは添付ファイルの内容を添付ファイル・ディレクトリー内のファイルへのパスに置き換えます。セラー・プロセスは、BCG_Persons ビジネス・オブジェクトには変更を行いません。次に、セラーはバックエンド・アダプターに接続されたポートに要求メッセージを送信します。バックエンド・アプリケーションは、必要に応じてファイル・パスを使用して添付ファイルを検索します。