BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA |
![]() |
![]() |
|
![]() |
e-docs > WebLogic Integration > WebLogic Integration チュートリアル > サンプルについて |
WebLogic Integration チュートリアル
|
サンプルについて
注意: この章を読む前に、サンプルを実行しておくことをお勧めします。手順については、サンプルの設定と実行を参照してください。ここで説明するサンプル コードは、WebLogic Platform のインストール ディレクトリの SAMPLE_HOME\integration¥samples¥wlis ディレクトリにあります。
SAMPLES_HOME は WebLogic Platform のサンプル ディレクトリを示します。
サンプル アプリケーションは、多くのビジネス プロセスを自動化し、バックエンドのエンタープライズ情報システム(EIS)を統合して、ビジネス パートナを結ぶサプライチェーンのハブをデプロイします。この章では、仮想企業 General Control Systems (GCS) が直面しているサプライチェーンの課題を、サンプル統合ソリューションでどのように解決するかについて説明します。具体的には、以下のトピックを取り上げます。
注意: このマニュアルで説明するWebLogic Integration サンプルは、WebLogic Integration の本リリースから非推奨になった XOCP ビジネス プロトコルに基づいています。XOCP の代替機能に関する詳細については、『WebLogic Integration リリース ノート』を参照してください。
概要
サンプル シナリオでは、General Control Systems (GCS) は、サプライチェーンの課題に対して WebLogic Integration ソリューションを実装することを決定します。最初のステップは何でしょう。
GCS では、WebLogic Integration を使用して以下のタスクを実行する方法を分析することから始めました。
ここからは、GCS が WebLogic Integration を使用して、これらのタスクを実行する方法について説明します。
ビジネス プロセスのモデル化
WebLogic Integration には、ビジネス プロセスの管理に必要なツールが用意されています。
B2B 統合の管理
WebLogic Integration は、外部のトレーディング パートナとのインターネット経由の通信をサポートしています。具体的には、XML メッセージの送受信用として XOCP、RosettaNet (1.1 と 2.0)、および Ariba cXML ビジネス プロトコルをサポートしています。
B2B 統合 BPM プラグインは WebLogic Integration Studio を拡張します。その結果、Studio を使用して、協調的ワークフロー、つまり外部のトレーディング パートナとメッセージをやり取りするワークフローを定義できるようになります。
新しいシステムと既存システムとの統合
WebLogic Integration は、アダプタを使用することで、Web ベースの新しいフロントエンド システムと既存のエンタープライズ情報システム(EIS)アプリケーションとの統合をサポートしています。Application Integration アダプタは、大きく次のように分類できます。
Application Integration アダプタのコンフィグレーションには、Web ブラウザのインタフェースを使用します。Application Integration アダプタを経由するビジネス イベントは、WebLogic Integration リポジトリの XML スキーマ定義(XSD)として定義します。
アプリケーション統合 BPM プラグイン WebLogic Integration Studio を拡張します。その結果、Studio では、次の処理を行うプロセスを定義できるようになります。
異種データ形式の処理
XML は、WebLogic Integration システムで使用されるメッセージ形式です。しかし、WebLogic Integration フレームワークでは、バイナリ メッセージ形式を使用する環境に WebLogic Integration アプリケーションを簡単に統合することができます。
WebLogic Integration は、次のデータ統合をサポートしています。
XSL スタイルシートは、手動で作成することも、WebLogic Integration 製品に同梱されている Contivo Analyst マッピング ツールを使用して作成することもできます。スタイルシートは、WebLogic Integration リポジトリに格納されます。
変換は実行時に次のように行われます。まず入力メッセージがワークフロー変数に割り当てられ、プロセス エンジンがリポジトリ内の XSL スタイルシートを参照し、出力メッセージが別のワークフロー変数に割り当てられます。
以下の節では、WebLogic Integration のコンポーネントを協調して動作させて、サンプル アプリケーションをビルドおよびデプロイする方法について説明します。
B2B Integration
電子商取引のトランザクションに(このシナリオのバイヤおよびサプライヤのロールで)参加するトレーディング パートナ間の関係を定義して管理することは、この統合ソリューションを開発する上で基本となる作業です。トレーディング パートナを定義および管理するためのデータは WebLogic Integration リポジトリに格納され、WebLogic Integration に用意されているツールおよびプロセスを使用して、流動的で多様なトレーディング パートナの関係を効率的に管理できます。
B2B 統合環境のコンフィグレーション方法を詳しく説明することは、このマニュアルの範囲を超えます。そこで、この節では、サンプル アプリケーションで使用される WebLogic Integration リポジトリ データ、そのデータをサンプルでロードする方法、およびデータを表示してサンプルにおけるビジネス会話の進捗状況をモニタする方法について簡単に説明します。
B2B Integration の詳細と、それをサポートする WebLogic Integration 環境のコンフィグレーション手順については、それぞれ『B2B Integration 入門』と『B2B Integration 管理ガイド』を参照してください。
この付録のトピックは以下のとおりです。
リポジトリ データのロード
トレーディング パートナを統合するためにサンプルで必要なデータは、サンプルの設定(サンプルの実行参照)時に RunSamples スクリプトを実行したときに、WebLogic Integration リポジトリにバルク ロードされます。
RunSamples スクリプトは、以下の XML ファイルに格納された B2B コンフィグレーション データをリポジトリにロードします。
WLI_HOME¥dbscripts
SystemRepData.xml ファイルには、システム データが格納されています。このサンプルで使用する要素は、次のとおりです。
SAMPLE_HOME\integration¥samples¥wlis¥lib
上の行の SAMPLES_HOME は、WebLogic Platform のサンプル ディレクトリです。
この BulkLoaderData.xml ファイルには、WebLogic Integration サンプルに固有のデータが格納されています。このファイルでは、次の要素を記述します。
各データ要素の詳細については、次のリポジトリ データについてを参照してください。
リポジトリ データについて
この節では、サンプル アプリケーション用として WebLogic Integration リポジトリにバルク ロードされるデータ要素に関して特に重要な情報を取り上げます。
注意: リポジトリ データのロードで説明したとおり、サンプル アプリケーションをサポートするために、2 つの XML ファイルのデータが WebLogic Integration リポジトリにインポートされます。コンフィグレーション データは、バルク ロードすることも、WebLogic Integration B2B Console を使用して入力することもできます。また、B2B Console を使用して、バルクロードしたデータにアクセスしたり、コンフィグレーションしたりすることができます。詳細については、WebLogic Integration B2B Console の使用を参照してください。
ビジネス プロトコル定義
SystemRepData.xml ファイルには、WebLogic Integration がサポートしているすべてのビジネス プロトコル(XOCP、RosettaNet、および cXML)の定義を含むシステム データが格納されています。WebLogic Integration サンプル アプリケーションでは、XOCP のみを使用します。
SystemRepData.xml ファイルの次の抜粋部分は、 XOCP ビジネス プロトコル定義を示しています。
コード リスト 3-1 SystemRepData.xml ファイル内の XOCP ビジネス プロトコル定義
<!-- XOCP BUSINESS PROTOCOL DEFINITIONS -->
<business-protocol-definition
name="XOCP-SPOKE"
business-protocol-name="XOCP"
protocol-version="1.1"
endpoint-type="SPOKE">
<java-class>com.bea.b2b.protocol.xocp.XOCPSpokeProtocol</java-class>
<decoder>XOCP-Decoder</decoder>
<encoder>XOCP-Encoder</encoder>
</business-protocol-definition>
<business-protocol-definition
name="XOCP-Hub"
business-protocol-name="XOCP"
protocol-version="1.1"
endpoint-type="HUB">
<java-class>com.bea.b2b.protocol.xocp.XOCPHubProtocol</java-class>
<decoder>XOCP-Decoder</decoder>
<system-router>XOCP-System-Router</system-router>
:
:
<system-router>XOCP-Router-Enqueue</system-router>
<system-filter>XOCP-System-Filter</system-filter>
:
<encoder>XOCP-Encoder</encoder>
:
:
</business-protocol-definition>
上のリストの次の点に注目してください。
ビジネス プロトコル 定義のコンフィグレーションの詳細については、『B2B Integration 管理ガイド 』の「コンフィグレーション要件」および『B2B Integration Administration Console オンライン ヘルプ』の「トレーディング パートナのコンフィグレーション 」を参照してください。
ロジック プラグイン
ロジック プラグインは、実行時にビジネス メッセージをインターセプトして処理する Java クラスです。各ビジネス プロトコルは、標準のルータおよびフィルタ ロジック プラグインに関連付けられています。
注意: カスタム ロジック プラグインは本リリースの WebLogic Integration から非推奨となりました。代替機能の詳細については、『WebLogic Integration リリース ノート』を参照してください。
SystemRepData.xml ファイルには、WebLogic Integration がサポートしているすべてのビジネス プロトコル(XOCP、RosettaNet、および cXML)の定義を含むシステム データが格納されています。このサンプルでは、XOCP ロジック プラグインのみを使用します。
ロジック プラグインの開発と、WebLogic Integration B2B エンジンを使用したメッセージの処理の詳細については、『B2B Integration ロジック プラグイン プログラミングガイド』を参照してください。 トレーディング パートナ WebLogic Integration サンプル シナリオでは、バイヤ(General Control Systems)と 2 つのサプライヤという 3 つのビジネス パートナが関係します。ビジネス パートナごとに、BulkLoaderData.xml ファイルでトレーディング パートナをコンフィグレーションします。サンプル用には、WLIS_Buyer、WLIS_SupplierOne、および WLIS_SupplierTwo というトレーディング パートナが定義されています。 トレーディング パートナは XOCP ビジネス プロトコルを使用して通信するので、General Control Systems では、WebLogic Integration システムを ハブ アンド スポーク コンフィグレーションとして定義する必要があります。B2B 統合のコンフィグレーションに関する詳細については、『B2B Integration 入門』の「B2B Integration の基礎」を参照してください。GCS 側には、BulkLoaderData.xml ファイルで第 4 のトレーディング パートナの WLIS_Hub を定義します。 WLIS_Hub トレーディング パートナは、仲介役として機能します。このトレーディング パートナは、スポーク トレーディング パートナである WLIS_Buyer、WLIS_SupplierOne、および WLIS_SupplierTwo 間のメッセージを仲介します。WLIS_Hub トレーディング パートナはビジネス メッセージの送信元でも受信先でもありませんが、トランザクションでは場合に応じて代理バイヤおよび代理サプライヤとなります。 3 つのトレーディング パートナ(WLIS_Buyer、WLIS_SupplierOne、および WLIS_SupplierTwo)のそれぞれには、WLIS_Hub トレーディング パートナとのコラボレーション アグリーメントがリンクされています。それぞれのコラボレーション アグリーメントをリンクするのは、WLIS_Hub トレーディング パートナです。たとえば、 あるコラボレーション アグリーメントの一部としてメッセージを受信し、別のコラボレーション アグリーメントの一部として別のトレーディング パートナにルーティングする場合には、こうしたリンクが必要不可欠です。同じ配信チャネル(WLIS_HUB トレーディング パートナ用に定義されているチャネル)を使用するコラボレーション アグリーメントは相互にリンクされます。このシナリオのコラボレーション アグリーメントの詳細については、コラボレーション アグリーメントを参照してください。 各トレーディング パートナ要素は、さまざまな属性および下位要素によって特性が記述されます。こうした属性および下位要素の一部は、名前、電子メール アドレス、電話番号、ファックス番号などの単純な ID 情報を格納します。次の表では、その他のトレーディング パートナのコンフィグレーション情報について説明します。
注意: サンプルのトレーディング パートナのコンフィグレーションについては、BulkLoaderData.xml ファイルを参照してください。 会話定義 BulkLoaderData.xml ファイルには、2 つの XOCP 会話定義が格納されています。一方は Query Price and Availability(QPA)会話用で、もう一方は Purchase Order(PO)会話用です。会話ごとに、バイヤとサプライヤの 2 つのロールがあります。各ロールは次のものを参照します。
wlpi-template="WLIS_SupplierQPA"
process-implementation wlpi-org="ORG1"
注意: WebLogic Integration の BPM コンポーネントは、以前の WebLogic Process Integrator(WLPI)です。ここで示すテンプレートおよびオーガニゼーションの名前として WebLogic Process Integrator または WLPI が使用されている場合があります。
ワークフロー テンプレートは、適用先の会話定義を参照します。たとえば、図3-12 で取り上げている会話は、このサンプルで使用するパブリック ワークフローのプロパティを示しています。
このサンプルを実装するためのワークフローの詳細については、ビジネス プロセスおよびワークフローのモデル化を参照してください。
オーガニゼーションは、さまざまなビジネス エンティティ、地理的な位置、または会社の特定のビジネスに関連する分類を表します。BPM オーガニゼーションの詳細については、『BPM クライアント アプリケーション プログラミング』の「セキュリティ レルムのコンフィグレーション」を参照してください。
次のリストは、BulkloaderData.xml ファイルの抜粋です。WLIS_QPAConversation を定義します。
コード リスト 3-2 BulkLoaderData.xml ファイルの会話定義
...
<conversation-definition
name="WLIS_QPAConversation"
version="1.1"
business-protocol-name="XOCP"
protocol-version="1.1">
<role
name="Buyer"
wlpi-template="WLIS_BuyerQPAPublic">
<process-implementation wlpi-org="ORG1" />
</role>
<role
name="Supplier"
wlpi-template="WLIS_SupplierQPAPublic">
<process-implementation wlpi-org="ORG1" />
</role>
</conversation-definition>
...
コラボレーション アグリーメント
このサンプルでは、QPA 会話と PO 会話でそれぞれ 3 つずつ、合計 6 つのコラボレーション アグリーメントを使用します。各会話用として、次の組み合わせのビジネス エンティティ間でコラボレーション アグリーメントが定義されています。
次の図は、QPA 会話(WLIS_QPAConversation)に参加するトレーディング パートナ間のコラボレーション アグリーメントを示しています。
図3-1 QPA 会話のトレーディング パートナ間のコラボレーション アグリーメント
次の図は、PO 会話(WLIS_POConversation)に参加するトレーディング パートナ間のコラボレーション アグリーメントを示しています。 図3-2 PO 会話のトレーディング パートナ間のコラボレーション アグリーメント
たとえば、WLIS_Hub トレーディング パートナは、WLIS_Buyer から QPA メッセージを受信する場合、QPA_1 コラボレーション アグリーメントの代理サプライヤの役割を果たします。QPA_2 および QPA_3 コラボレーション アグリーメントでは、ロールを変えて、代理バイヤとなります。
次のリストは、BulkLoaderData.xml ファイルの抜粋です。この抜粋部分では、WLIS_Hub と WLIS_Buyer との間のコラボレーション アグリーメントが記述されています。
コード リスト 3-3 BulkLoaderData.xml ファイルのコラボレーション アグリーメント
...
<collaboration-agreement
name="WLIS_QPAConversation|1.1|WLIS_Buyer|WLIS_Hub"
global-identifier="WLIS_QPAConversation|1.1|WLIS_Buyer|WLIS_Hub
version="1.1"
status="ENABLED"
conversation-definition-name="WLIS_QPAConversation"
conversation-definition-version="1.1">
<party
trading-partner-name="WLIS_Buyer"
party-identifier-name="WLIS_BuyerPartyId"
delivery-channel-name="WLIS_BuyerDeliveryChannel"
role-name="Buyer"/>
<party
trading-partner-name="WLIS_Hub"
party-identifier-name="WLIS_HubPartyId"
delivery-channel-name="WLIS_HubDeliveryChannel"
role-name="Supplier"/>
</collaboration-agreement>
...
WebLogic Integration B2B Console の使用
WebLogic Integration では、コンフィグレーション データをバルク ロードすることも、WebLogic Integration B2B Console を使用して入力することもできます。WebLogic Integration サンプルを実行する場合に B2B Console を実行する必要はありませんが、実行すると、サンプル用にバルク ロードされたリポジトリ データを表示できます(リポジトリ データのロードを参照)。また、B2B Console を使用して、サンプルの実行中に進行している会話をモニタすることもできます。
WebLogic Integration B2B Console を起動するには、プラットフォームに合わせて適切な手順を実行します。
注意: 既に実行中の場合は、サンプルの設定と実行の説明に従って WebLogic Integration サンプルを実行します。
[スタート|プログラム|BEA WebLogic Platform 7.0|WebLogic Integration 7.01|B2B Console] を選択します。
a. コマンド ウィンドウを開きます。
b. WebLogic Integration をインストールしたディレクトリの bin ディレクトリに移動します。たとえば、次を入力します。
cd WLI_HOME¥bin
c. 次のように入力して B2B Console を起動します。
startB2bconsole
http://localhost:7001/b2bconsole
次の図は、WebLogic Integration サンプルのデータがロードされた状態の WebLogic Integration B2B Console を示しています。
図3-3 サンプル データを表示した状態の WebLogic Integration B2B Console
WebLogic Integration B2B Console を使用して B2B 統合をコンフィグレーションする方法については、『B2B Integration Administration Console オンライン ヘルプ』と『B2B Integration 管理ガイド』を参照してください。Bulk Loader の詳細については、『B2B Integration 管理ガイド』の「Bulk Loader の操作」を参照してください。
ビジネス プロセスおよびワークフローのモデル化
この節では、WebLogic Integration の Business Process Management (BPM) の機能を簡単に紹介してから、Studio の使い方と、WebLogic Integration サンプルで実装されている 2 つのビジネス プロセスの Query Price and Availability (QPA) および Purchase Order (PO) について説明します。この章の内容は以下のとおりです。
BPM の概要
会話定義(会話定義を参照)でトレーディング パートナに割り当てられるロールを実装するワークフローは、協調的ワークフローと呼ばれます。
ワークフロー テンプレートはワークフローの見本で、さまざまなワークフロー テンプレート定義(バージョン)の実装を組み合わせたものです。ワークフロー テンプレートは、WebLogic Integration Studio を使用して設計および編集します。複数の BPM プラグインを使用して、Studio の機能を拡張できます。
サンプル シナリオでは、トレーディング パートナは、プライベート ワークフローと協調的ワークフローの両方を実装しています。プライベート ワークフローは協調的ワークフローと連携して動作し、トレーディング パートナのローカル プロセスを実装します。会話定義では、ローカルおよびプライベート プロセスを指定する必要はありません。たとえば、トレーディング パートナが会話を開始する場合、そのトレーディング パートナのプライベート ワークフローが、その会話を開始する協調的ワークフローを開始します。
以下の節では、サンプルのビジネス トランザクションのバイヤサイドおよびサプライヤサイドにおけるビジネス プロセスの実装について説明します。ワークフローの主要な設計要素、タスク、およびイベントは、特に強調されています。
WebLogic IntegrationStudio の使い方
WebLogic Integration Studio を使用すると、新しいワークフローを設計したり、見慣れたフローチャートを使用して進行中のワークフローをモニタしたりすることができます。WebLogic Integration サンプルを実行する場合に Studio を実行する必要はありませんが、ワークフローまたはワークフロー ノードの詳細を表示したり、このサンプルに関するノードの定義およびコンフィグレーションを調べたりする場合には Studio が役立ちます。また、Studio を使用して、サンプルの実行中にワークフローをモニタすることもできます。
この節では、Studio の起動手順および使い方と、ビジネス プロセスの管理で使用するサンプルのコンポーネント リストについて説明します。
Studio の起動
Studio を起動するには、プラットフォームに合わせて適切な手順を実行します。
[スタート|プログラム|BEA WebLogic Platform 7.0|WebLogic Integration 7.0|Studio] を選択します。
b. Studio にログオンします(ユーザ名 : admin、パスワード : security)。
a. コマンド ウィンドウを開きます。
b. WebLogic Integration をインストールしたディレクトリの bin ディレクトリに移動します。たとえば、次を入力します。
cd WLI_HOME¥bin
c. 次のように入力して studio コマンドを実行します。
studio
d. Studio にログオンします(ユーザ名 : admin、パスワード : security)。
cd WLI_HOME/bin
. ./studio
Studio でのワークフロー テンプレートの表示
Studio でワークフロー テンプレートとそのプロパティを表示するには、次の手順を実行します。
Studio のツールおよび機能の詳細については、『WebLogic Integration Studio ユーザーズ ガイド』を参照してください。
サンプル内の BPM コンポーネント
このサンプル アプリケーション用として Studio およびプロセス エンジンで必要なワークフロー テンプレートおよびその他のデータは、サンプルをコンフィグレーションするときに、workflow.jar ファイルによって WebLogic Integration リポジトリにロードされます。インポートされるコンポーネントは、次の表のとおりです。
QPA ビジネス プロセス 金属ボックスの供給不足のため、GCS (バイヤ トレーディング パートナ) は、選択したサプライヤにそのボックスの QPA メッセージを送信します。次の図は、QPA ビジネス プロセスのイベント フローを示しています。 図3-4 QPA ビジネス プロセスのプロセス フロー
注意: 上の図は、QPA ビジネス プロセスの高レベルのビューを示しています。各サイドのプロセスは、パブリック(協調的)ワークフローとプライベート ワークフローによって実装されます。以下の節では、これらのワークフローについて説明します。
QPA 実装の概要
このシナリオでは、各トレーディング パートナは、QPA プロセスのプライベート ワークフローおよびパブリック ワークフローを実装しています。サンプルの QPA プロセスでは、以下の 5 つのワークフロー テンプレートが使用されます。
WebLogic Integration は、ビジネス パートナ間のビジネス会話およびコラボレーション アグリーメントを管理し、バイヤとサプライヤ間のビジネス メッセージの交換を自動化します。コラボレーション アグリーメントおよび会話で取り上げるワークフローについては、リポジトリ データについてで説明します。 このサンプルでは、JSP と JSP タグ ライブラリを使用して、QPA プロセスを開始し、QPA 要求と応答データを表示します。次の図は、QPA ビジネス トランザクションに関与するトレーディング パートナ間のデータ フローを示しています。 図3-5 QPA ビジネス プロセスのデータ フロー
バイヤサイドおよびサプライヤサイドの実装については、バイヤサイドの実装とサプライヤサイドの実装でさらに詳しく説明しています。 トレーディング パートナおよびワークフロー間のデータ フローをまとめると、次のイベント シーケンスになります。
バイヤサイドの実装
このソリューションを実装するため、バイヤ(GCS)は、サンプルの操作、メッセージの処理、および JMS を使用した WebLogic Integration プロセス エンジンとの XML メッセージの交換を行うカスタム クライアント(Web ユーザ インタフェース)を実装しています。また、GCS では、バイヤのバックエンド プロセスを管理するプライベート ワークフローと、QPA 会話でメッセージの交換を管理するパブリック ワークフローも実装しています。この節では、以下のコンポーネントについて説明します。
バイヤサイドの Web ユーザ インタフェース
次の図に示すように、バイヤのプライベート ワークフロー(WLIS_BuyerQPAPrivate)との会話には Web ユーザ インタフェースを使用します。
図3-6 Web ユーザ インタフェースとバイヤのプライベート ワークフロー間の会話
上の図の会話をまとめると、次のイベント シーケンスになります。
コード リスト 3-4 SendQPARequestTag.java
// JMS 接続ファクトリの定義
final String JMS_FACTORY = "com.bea.wlpi.QueueConnectionFactory";
// JMS キューの定義
final String QUEUE = "com.bea.wlpi.EventQueue";
...
バイヤの QPA プライベート ワークフロー
WLIS_BuyerQPAPrivate ワークフローは、QPA 応答データを格納する JMS メッセージを JSP から受信すると開始されます。ワークフローと Web ユーザ インタフェースについては、バイヤサイドの Web ユーザ インタフェースを参照してください。
次の図は、WLIS_BuyerQPAPrivate ワークフロー テンプレートを示しています。
図3-7 WLIS_BuyerQPAPrivate ワークフロー テンプレート
以下の節では、上の図に示した WLIS_BuyerQPAPrivate ワークフロー テンプレートのノードの主要なタスクおよびイベントについて定義します。
図3-8 [アプリケーション ビュー サービスの呼び出し] ダイアログ ボックス
注意: 入力または応答時の XML スキーマを調べるには、それぞれ [要求定義の表示] または [応答定義の表示] をクリックします。[定義を表示] ダイアログ ボックスが表示されます。必要でなくなったら [閉じる] をクリックします。
図3-9 [ワークフロー変数を設定] ダイアログ ボックス
図3-10 [パブリック ワークフローを開始] ダイアログ ボックス
上の図で、WebLogic Integration サンプルの以下のプロパティに注目してください。
BulkLoaderData.xml ファイルの抜粋については、リスト3-3 の BulkLoaderData.xml ファイルのコラボレーション アグリーメント,を参照してください。この抜粋部分は、プロセス エンジンがリポジトリ内で検索し、[会話] タブの指定内容を満たすコラボレーション アグリーメントを示しています。
このノードでは、サブワークフロー(WLIS_BuyerQPAPublic)も非同期で呼び出されます。[タスク プロパティ] ダイアログ ボックスで [アクション|アクティブ化] を選択すると、以下のアクションがこの順序で指定されます。
B2B 会話のワークフローの詳細については、『B2B Integration ワークフローの作成』を参照してください。
バイヤの QPA パブリック ワークフロー
バイヤのパブリック ワークフロー(WLIS_BuyerQPAPublic)は、バイヤのプライベート ワークフロー(WLIS_BuyerQPAPrivate)によって QPA ビジネスプロセス向けに開始されます。
次の図は、WLIS_BuyerQPAPublic ワークフロー テンプレートを示しています。
図3-11 WLIS_BuyerQPAPublic ワークフロー テンプレート
以下の節では、上の図に示した WLIS_BuyerQPAPublic ワークフロー テンプレートのノードの主要なタスクおよびイベントについて定義します。
注意: B2B 会話で呼び出されるワークフロー、つまり パブリック ワークフローに対して会話のプロパティを定義する必要があります。パブリック ワークフローは、WebLogic Integration 環境では 協調的ワークフローとも呼ばれます。WLIS_BuyerQPAPublic ワークフローは、協調的ワークフローの一例です。
WLIS_BuyerQPAPublic ワークフロー テンプレートの会話のプロパティを確認するには、Studio の左ペインでテンプレート名を右クリックし、ドロップダウン メニューから [プロパティ] を選択します。次の図に示す [テンプレート定義] ダイアログ ボックスが表示されます。
図3-12 WLIS_BuyerQPAPublic ワークフローの [テンプレート定義] ダイアログ ボックス
図3-13 [ビジネス メッセージの送信] ダイアログ ボックス
図3-14 B2B 会話のイベント ノードのプロパティ
図3-15 [ワークフロー変数を設定] ダイアログ ボックス
サプライヤサイドの実装
このソリューションを実装するために、サプライヤは、バックエンドプロセスを管理するプライベート ワークフローと、QPA 会話でメッセージの交換を管理するパブリック ワークフローを実装します。この節では、以下のワークフローについて説明します。
サプライヤの QPA パブリック ワークフロー
サプライヤの QPA パブリック ワークフロー(WLIS_SupplierQPAPublic)は、WLIS_Hub トレーディング パートナからのメッセージの受信によって開始されます。
次の図は、WLIS_SupplierQPAPublic ワークフロー テンプレートを示しています。
図3-16 WLIS_SupplierQPAPublic ワークフロー テンプレート
以下の節では、上の図に示した WLIS_SupplierQPAPublic ワークフロー テンプレートのノードの主要なタスクおよびイベントについて定義します。
サプライヤの QPA プライベート ワークフロー
このカテゴリには、各サプライヤに 1 つずつ、合わせて 2 つのワークフロー テンプレートがあります。
2 つのテンプレートには若干の違いがあります。詳細については説明しないので、各自で確認してください。
サプライヤの QPA プライベート ワークフローは、サプライヤの QPA パブリック ワークフロー(WLIS_SupplierQPAPublic)から呼び出されます。
次の図は、WLIS_SupplierOneQPAPrivate ワークフロー テンプレートを示しています。
図3-17 WLIS_SupplierOneQPAPrivate ワークフロー テンプレート
以下の節では、上の図に示した WLIS_SupplierOneQPAPrivate ワークフロー テンプレートのノードの主要なタスクおよびイベントについて定義します。
$QPARequestXML))
PO ビジネス プロセス
このサンプル シナリオのバイヤになったつもりでお読みください。サプライヤからの QPA 応答を確認したら、いずれかのサプライヤを選択し、PO ビジネス プロセスを開始します。ステップ 6: 発注書を作成するを参照してください。次の図は、PO ビジネス プロセスのイベント フローを示しています。
図3-18 PO ビジネス プロセスのプロセス フロー
注意: 上の図は、PO ビジネス プロセスの高レベルのビューを示しています。各サイドのプロセスは、パブリック ワークフローとプライベート ワークフローによって実装されます。以下の節では、これらのワークフローについて説明します。
PO 実装の概要
このシナリオでは、各トレーディング パートナは、PO プロセスのプライベート ワークフローおよびパブリック ワークフローを実装しています。サンプルでは、以下のワークフロー テンプレートが使用されています。
このサンプルの PO 実装では、アプリケーション統合、データ統合、およびビジネス プロセス管理に関して WebLogic Integration のサポートを必要とします。この節では、PO ワークフローについて説明します。バックエンド アプリケーションおよび異種データ形式との統合についても説明します。このシナリオの PO ビジネス プロセスにあてはめた場合のアプリケーション統合およびデータ統合機能の詳細については、Application Integration と Data Integrationを参照してください。 次の図は、PO ビジネス プロセスに関与するトレーディング パートナ間のデータ フローを示しています。 図3-19 PO ビジネス プロセスのデータ フロー
バイヤサイトおよびサプライヤサイドの実装の詳細については、バイヤサイドの実装 と サプライヤサイドの実装を参照してください。 トレーディング パートナ、ワークフロー、およびバックエンド システムの間のデータ フローをまとめると、次のイベント シーケンスになります。
バイヤサイドの実装
サンプル シナリオのバイヤ(GCS)は、ビジネス トランザクションを操作するための Web ユーザ インタフェース、バイヤのバックエンド プロセスを管理するためのプライベート ワークフロー、および PO 会話でのメッセージ交換を管理するパブリック ワークフローを実装しています。WLIS_Buyer トレーディング パートナは、PO 情報を RDBMS に格納します。
WebLogic Integration で提供されるアプリケーション統合フレームワークを使用することで、PO ビジネス プロセスのワークフローと RDBMS との統合が可能になります。アプリケーションの統合をサポートするため、サンプル ドメインをセットアップおよびコンフィグレーションするときに、アプリケーション ビュー(WLISAppView.sav)がデプロイされます。サンプル ドメインのセットアップについては、ステップ 1A : RunSamples スクリプトを起動するを参照してください。
この節では、バイヤサイドの PO ビジネス プロセスの以下のコンポーネントについて説明します。
バイヤサイドの Web ユーザ インタフェース
バイヤの PO プライベート ワークフロー
WLIS_BuyerPOPrivate ワークフローは、以下の主要なタスクを実行します。
次の図は、WLIS_BuyerPOPrivate ワークフロー テンプレートを示しています。
図3-20 WLIS_BuyerPOPrivate ワークフロー テンプレート
以下の節では、上の図に示した WLIS_BuyerPOPrivate ワークフロー テンプレートのノードの主要なタスクおよびイベントについて定義します。
図3-21 [開始のプロパティ] ダイアログ ボックス
注意: イベント ドキュメントの XML スキーマを調べるには、[開始のプロパティ] ダイアログ ボックスの [定義を表示] をクリックします。
PO.xml)に書き込みます。このローカル ファイルは JSP によって処理されます。
common¥util¥Utils.java
図3-22 [パブリック ワークフローを開始] ダイアログ ボックス
上の図で、パブリック ワークフローを開始 アクション用の以下のパラメータに注目してください。
POAcknowledgement.xml
バイヤの PO パブリック ワークフロー
WLIS_BuyerPOPublic ワークフローの主なタスクは、発注会話(WLIS_POConversation)で XOCP ビジネス メッセージを送受信することです。
次の図は、WLIS_BuyerPOPublic ワークフロー テンプレートを示しています。
図3-23 WLIS_BuyerPOPublic ワークフロー テンプレート
以下の節では、上の図に示した WLIS_BuyerPOPublic ワークフロー テンプレートのノードの主要なタスクおよびイベントについて定義します。
サプライヤサイドの実装
このシナリオでは、各サプライヤは、自身のバックエンド プロセスを統合するためのプライベート ワークフローと、PO 会話でのメッセージ交換を管理するためのパブリック ワークフローを実装しています。この節では、以下のワークフローについて説明します。
サプライヤの PO パブリック ワークフロー
PO パブリック ワークフロー(WLIS_SupplierPOPublic) は、バイヤの PO パブリック ワークフロー(WLIS_BuyerPOPrivate)から XOCP ビジネス メッセージを受信した時点で開始されます。
次の図は、WLIS_SupplierPOPublic ワークフロー テンプレートを示しています。
図3-24 WLIS_SupplierPOPublic ワークフロー テンプレート
以下の節では、上の図に示した WLIS_SupplierPOPublic ワークフロー テンプレートのノードの主要なタスクおよびイベントについて定義します。
サプライヤの PO プライベート ワークフロー
サンプル アプリケーションでは、PO プロセスのサプライヤ用に、WLIS_SupplierOnePOPrivate と WLIS_SupplierTwoPOPrivate というプライベート ワークフロー テンプレートが定義されています。これらのテンプレートはほぼ同じです。
次の図は、WLIS_SupplierOnePOPrivate ワークフロー テンプレートを示しています。
図3-25 WLIS_SupplierOnePOPrivate ワークフロー テンプレート
以下の節では、上の図に示した WLIS_SupplierOnePOPrivate ワークフロー テンプレートのノードの主要なタスクおよびイベントについて定義します。
Application Integration と Data Integration
この節では、以下のトピックを取り上げます。
はじめに
PO ビジネス プロセスのワークフローと WLIS_BuyerQPAPrivate ワークフローは、WebLogic Integration の BPM 機能を、WebLogic Integration の Application Integration と Data Integration の機能と統合します。
バイヤサイドのプロセスでは、アプリケーション統合フレームワークを使用し、PO 確認書に基づいてエンタープライズ情報システム(EIS)を更新します。次に、このワークフローは、PO 確認情報を POAcknowledgement.xml ファイルに書き込みます。
サプライヤサイドのプロセスでは、データ統合フレームワークを使用し、XML データをバイナリ データに、またはバイナリ データを XML データに変換します。
Application Integration
WLIS_BuyerQPAPrivate および WLIS_BuyerPOPrivate ワークフローは、WebLogic Integration で提供される Application Integration の機能と、ワークフローとアプリケーション統合サービス間の会話の最も重要な部分を示します。バイヤの QPA プライベート ワークフローとバイヤの PO プライベート ワークフローを参照してください。
企業は、元のアプリケーション コードやデータ構造を変更することなく、アプリケーション間でデータとビジネス プロセスを共有できるようにするエンタープライズ アプリケーション統合(EAI)ソリューションを必要としています。WebLogic Integration は、アダプタを使用することで、エンタープライズ間の統合をサポートするアプリケーション統合フレームワークを提供します。
アダプタは、アプリケーションがエンタープライズ データにプログラム的にアクセスするために使用できるインタフェースを提供します。たとえば、アダプタは Java クラスを使用してエンタープライズ データを表したり、アプリケーションがデータにアクセスするために呼び出せるメソッドを提供したりできます。アプリケーションがアクセス メソッドを呼び出すと、アダプタはそのメソッドを実行してエンタープライズ データを検索します。WebLogic Integration で提供される Application Integration の機能は、J2EE Connector Architecture (JCA) に基づいています。WebLogic Integration で利用可能なアプリケーション統合ツールは、J2EE 標準に完全準拠している以外にも、以下の重要な機能を提供します。
WebLogic Integration 環境の Application Integration の詳細については、『Application Integration 入門』を参照してください。
アプリケーション ビューを定義する場合、WebLogic Integration と EIS アプリケーション間の XML ベースのインタフェースを作成します。このサンプルでは、EIS システムは RDBMS です。サンプルで使用する Application Integration アダプタは、WebLogic Integration 製品と一緒にパッケージ化されている DBMS アダプタです。このサンプルのアプリケーション ビュー(WLISAppView.sav)は、DBMS アダプタに基づいて、WebLogic Integration で定義およびデプロイされています。WebLogic Integration のインストール ディレクトリの ¥samples¥wlis¥src¥examples¥wlis¥wlai¥WLISAppViewDeployer.java を確認してください。
アプリケーション ビューを定義、テスト、およびデプロイするには、Web ベースのユーザ インタフェースである WebLogic Integration Application View Console を使用します。アプリケーション ビューの定義方法については、『Application Integration ユーザーズ ガイド』を参照してください。
また、Application View Console を使用すると、このサンプル用に WLISAppviewDeployer.java Java プログラムによって作成されたアプリケーション ビューの詳細を表示できます。手順は次のとおりです。
図3-26 WebLogic IntegrationApplication View Console
WLISAppView.sav アプリケーション ビューには、以下のサービスおよびイベントが含まれています。
Application View Console の以下のリンクをクリックすると、サービスまたはイベントの詳細が表示されます。
Data Integration
WLIS_SupplierOnePOPrivate および WLIS_SupplierTwoPOPrivate ワークフローは、WebLogic Integration で提供される Data Integration の機能の最も重要な部分を示します。この機能は、XML からバイナリ形式への変換、またはバイナリ形式から XML への変換で使用されます。このサンプル アプリケーションの場合、以下の変換が実行されます。
これらの変換については、サプライヤの PO プライベート ワークフローを参照してください。
データ統合をサポートするために、Studio では以下の Data Integration プラグインのアクションを利用できます。
Studio を使用してタスク ノードでデータ変換を実行するには、次の手順に従います。
上の図の以下の点に注目してください。
このサンプル アプリケーションの場合、2 つの変換マップ(PO.mfl と POAck.mfl)が Format Builder 設計ツールで作成され、WebLogic Integration リポジトリに保存されています。workflow.jar パッケージに格納されているマップは、サンプルのセットアップおよびコンフィグレーション時にインポートされます。
このサンプルの変換マップを表示するには、Format Builder ツールを起動します。次の節を参照してください。
Format Builder の起動
Format Builder を起動するには、プラットフォームに合わせて適切な手順を実行します。
[スタート|プログラム|BEA WebLogic Platform 7.0|WebLogic Integration 7.0|Format Builder] を選択します。
cd WLI_HOME
setenv
WLI_HOME は WebLogic Integration がインストールされているディレクトリを表します。
cd WLI_HOME¥bin
fb.cmd
cd WLI_HOME
setenv
WLI_HOME は WebLogic Integration がインストールされているディレクトリを表します。
たとえば、次を入力します。
cd WLI_HOME¥bin
BEA_Home は、BEA 製品のデフォルトのインストール先ディレクトリを表します。
. ./fb
サンプルの変換マップの表示
このサンプルの変換マップを表示するには、次の手順に従います。
システム上のファイルを参照するためのダイアログ ボックスが表示されます。
SAMPLE_HOME\integration¥samples¥wlis¥lib¥xt
上の行の SAMPLES_HOME は、WebLogic Platform のサンプル ディレクトリです。
Format Builder 設計ツールを使用して変換マップを作成およびテストする方法については、『WebLogic Integration データ変換』を参照してください。次の図は、Format Builder で定義中の PO.mfl 変換マップを示しています。
図3-28 Format Builder 内の PO マップ
![]() |
![]() |
![]() |
![]() |
||
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |