単純な非同期 BPEL プロセス
最終更新日: 2007 年 1 月 10 日
寄稿者 Sherry Barkodar、保守管理者 Alyona Stashkova
このチュートリアルでは、サンプルプロジェクト AsynchronousSample の概要を示し、NetBeans Enterprise Pack 5.5 バンドルおよび必要なすべての実行環境を使用して非同期 BPEL プロセスを配備、実行、およびテストする方法について説明します。
非同期 BPEL プロセスは単純です。非同期 BPEL プロセスはエコープロセスですが、非同期エコーであり、同期エコーではありません。クライアントはプロセスにメッセージを送信します。プロセスは、入力メッセージを受信し、ただちに返します。そのあと、プロセスは元のクライアントを非同期に呼び出して、同じメッセージを返信します。非同期プロセスは、BPEL プロセスが長く実行される場合 (結果を計算するのに長い時間がかかる場合) に使用されます。結果は、クライアントに対する呼び出しを実行することによってクライアントに返されます。このチュートリアルでは、AsynchronousSample という単純な BPEL プロジェクトと AsynchronousSampleApplication という複合アプリケーションプロジェクトを使用します。このプロジェクトには、WSDL ファイル、スキーマファイル、配備記述子、およびテスト用の入力ファイルが含まれます。このプロセスの Web サービスインタフェースは単一の非同期操作です。
前提条件
このチュートリアルでは、Java 言語、Java プラットフォーム、および NetBeans IDE の基本的な知識またはプログラミング経験があることを前提としています。
システム要件
これらのチュートリアルでは、『NetBeans Enterprise Pack 5.5 リリースノート』の「システム要件」のトピックに指定された要件を、システムが満たしていることが前提になります。
チュートリアルに必要なソフトウェア
開始する前に、次のソフトウェアをコンピュータにインストールしてください。
- NetBeans IDE 5.5 と NetBeans Enterprise Pack 5.5 (ダウンロード)
- このチュートリアルの配備の手順を実行するには、Sun Java System Application Server Platform Edition 9 Update 1 が必要です。この Application Server は、NetBeans Enterprise Pack 5.5 のダウンロードに付属しています。
目次
ページの先頭へ
チュートリアル環境の構成
アプリケーションを配備する前に、Sun Java System Application Server と JBI 実行環境を正しく構成して、実行してください。
チュートリアル環境を構成するには、次の手順に従います。
- 「実行時」タブをクリックして「実行時」ウィンドウを開きます。
- 「実行時」ウィンドウで「サーバー」ノードを展開します。
- 「サーバー」ノードにすでに「Sun Java System Application Server 9」が含まれている場合は、手順 5 に進みます。
- 「サーバー」ノードに「Sun Java System Application Server 9」が含まれていない場合、次の手順を実行してアプリケーションサーバーを追加します。
- 「サーバ」ノードを右クリックし、ポップアップメニューから「サーバーを追加」を選択します。
「サーバーインスタンスを追加」ダイアログが開きます。
- 「サーバーを選択」ページで、「サーバー」ドロップダウンリストから「Sun Java System Application Server」を選択します。
- (省略可能)「名前」フィールドで、IDE 内でこのサーバーを識別するために使用する任意の名前を入力するか、デフォルト値のままにします。
- 「次へ」をクリックします。
「プラットフォームフォルダの場所」ページが開きます。
- 「プラットフォームの場所」フィールドで「参照」ボタンを使用して移動し、Application Server のインストール場所を選択します。
インストール時にデフォルト値のままにした場合、インストール場所は C:\Sun\Appserver です。
- 「ローカルのデフォルトドメインを登録」オプションを選択します。
- 「次へ」をクリックします。
- ドメインの管理者のユーザー名とパスワードを入力します。
インストール時にデフォルト値をそのまま使用した場合、ユーザー名は「admin」で、パスワードは「adminadmin」です。
- 「完了」をクリックします。
- 「実行時」ウィンドウで、「Sun Java System Application Server 9」ノードを右クリックし、「開始」を選択します。
「開始」オプションを使用できない場合、サーバーはすでに実行中なので、次の手順を省略できます。
- 「出力」ウィンドウに次のメッセージが表示されるまで待ちます。
アプリケーションサーバーの起動は完了しました。
サーバーが実行されている場合、「Sun Java System Application Server 9」ノードに緑色の矢印のバッジが表示されます。

(クリックして拡大)
ページの先頭へ
AsynchronousSample プロジェクトのオープン
- IDE のメインメニューから、「ファイル」>「新規プロジェクト」を選択します。
「新規プロジェクト」ウィザードが開きます。
- 「カテゴリ」リストで、「サンプル」>「サービス指向アーキテクチャー」を選択します。
- 「プロジェクト」リストで、「非同期 BPEL プロセス」を選択します。

(クリックして拡大)
- 「次へ」をクリックします。
- 「プロジェクト名」フィールドに「AsynchronousSample」と入力します。
- (省略可能)「プロジェクトの場所」フィールドで、「参照」ボタンを使用して移動し、IDE がプロジェクトファイルを格納する別のフォルダを選択します。
- 「完了」をクリックします。
この時点で、「プロジェクト」ウィンドウに 2 つのノードが含まれます。「AsynchronousSample」という BPEL プロジェクトのノードと、「AsynchronousSampleApplication」という複合アプリケーションプロジェクトのノードです。
「AsynchronousSampleApplication」ノードの壊れた参照に注意してください。これは正常な動作です。複合アプリケーションには、JBI モジュールに対する依存性があります。
壊れた参照の解決は、このあとの「Application Server へのプロジェクトの配備」の節で行います。
ページの先頭へ
「プロジェクト」ウィンドウでの BPEL および JBI プロジェクトの操作
- 「プロジェクト」ウィンドウで、「AsynchronousSample」ノードを展開し、「プロセスファイル」ノードを展開します。
「プロセスファイル」ノードには、次の項目が入っています。
- AsynchronousSample.bpel、BPEL プロセス
- AsynchronousSample.wsdl、プロセス Web サービスインタフェース
- AsynchronousSample.xsd、スキーマファイル
- AsynchronousSampleClient.bpel、テストクライアントプロセス
- AsynchronousSampleClient.wsdl、クライアントプロセスの wsdl
- 「プロジェクト」ウィンドウで、「AsynchronousSampleApplication」ノードを展開します。JBI 配備プロジェクトには、次のものが含まれています。
- 「AsynchronousSample.bpel」ノードをダブルクリックします。
次の点を確認します。
- ソースエディタに AsynchronousSample.bpel のタブがあります。
- デザインビューに AsynchronousSample の図が表示されます。
デザインビューは、ビジネスプロセスのビジュアルデザイナーです。このビューで、ビジネスプロセスを視覚的にモデル化できます。BPEL Design ツールは、ビジュアルデザインに対応する BPEL コードを自動的に生成します。
- BPEL 要素のパレットがソースエディタの右側に開かれます。
- 「ナビゲータ」ウィンドウに、BPEL プロセスの BPEL 論理ビューが表示されます。

(クリックして拡大)
ページの先頭へ
「プロジェクト」ウィンドウでの AsynchronousSampleClient の操作
AsynchronousSample プロジェクトは非同期 BPEL プロセスです。非同期プロセスのテストには、非同期コールバックを受信できるクライアントが必要です。そのため、プロジェクトには AsynchronousSampleClient BPEL プロセスも含まれます。AsynchronousSampleClient プロセスの唯一の目的は、AsynchronousSample のユニットテストを支援することです。
- 「AsynchronousSampleClient.bpel」ノードをダブルクリックします。
AsynchronousSampleClient の図がデザインビューに表示されます。
AsynchronousSample (partnerLinkB) は、AsynchronousSampleClient に対する呼び出しを行なって応答を返します。

- AsynchronousSampleClient プロセス内の receiveCallback 受信アクティビティーをダブルクリックします。
receiveCallback のプロパティーエディタが開きます。
- 「相互関係」タブをクリックし、相互関係子の行を選択して、「編集」をクリックします。
相互関係セット編集エディタが表示されます。
この応答が、相互関係を使用して AsynchronousSampleClient の正しいインスタンスに関係付けられている様子を確認してください。

ページの先頭へ
Application Server へのプロジェクトの配備
BPEL プロジェクトは直接配備できません。BPEL プロジェクトは、JBI モジュールとして複合アプリケーションプロジェクトに追加してください。そのあと、複合アプリケーションプロジェクトを配備できます。プロジェクトを配備すると、アプリケーション サーバーがサービスアセンブリを使用できるようになり、それによって、サービスユニットを実行できます。
- 「プロジェクト」タブの下で「AsynchronousSampleApplication」配備プロジェクトノードを右クリックし、「JBI モジュールを追加」を選択します。
「プロジェクトの選択」ウィザードが表示されます。
- 「プロジェクトの選択」ウィザードで、「AsynchronousSample」を選択します。

- 「プロジェクト JAR ファイルを追加」ボタンをクリックします。
- 「AsynchronousSampleApplication」>「JBI モジュール」を展開します。
「AsynchronousSample.jar」ノードが追加されます。

- 「AsynchronousSampleApplication」プロジェクトノードを右クリックして、「プロジェクトを配備」を選択します。
- 「警告」ダイアログで、「Sun Java System Application Server 9」が選択されていることを確認してから、「了解」をクリックします。
- 配備に成功すると、「出力」ウィンドウに次のメッセージが表示されます。

- 「出力」ウィンドウが表示されない場合は、「ウィンドウ」>「出力」を選択します。
ページの先頭へ
AsynchronousSampleApplication のテスト
- 「プロジェクト」ウィンドウで、「AsynchronousSampleApplication」>「テスト」>「NewTestcase0」を展開します。「NewTestcase0」ノードには、次の 2 つの XML ファイルがあります。
- 入力用の Input.xml
- 出力用の Output.xml
テストを実行するたびに、現在の出力が Output.xml の内容と比較されます。

- 「AsynchronousSampleApplication」プロジェクトノードを右クリックし、コンテキストメニューから「プロジェクトをテスト」を選択します。
「出力」ウィンドウに次のメッセージが表示されます。

ページの先頭へ