FeaturesPluginsDocs & SupportCommunityPartners

単純な非同期 BPEL プロセスの開発

このチュートリアルでは、サンプルプロジェクト AsynchronousSample の概要を示し、NetBeans IDE 6.0 および必要なすべての実行環境を使用して非同期 BPEL プロセスを配備、実行、およびテストする方法について説明します。

プロセスはエコープロセスですが、非同期エコーであり、同期ではありませんクライアントはプロセスにメッセージを送信します。プロセスは、入力メッセージを受信し、ただちに返します。そのあと、プロセスは元のクライアントを非同期に呼び出して、同じメッセージを返信します。非同期プロセスは、BPEL プロセスが長く実行される場合 (結果を計算するのに長い時間がかかる場合) に使用されます。結果は、クライアントに対する呼び出しを実行することによってクライアントに返されます。このチュートリアルでは、AsynchronousSample という単純な BPEL プロジェクトと AsynchronousSampleApplication という複合アプリケーションプロジェクトを使用します。このプロジェクトには、WSDL ファイル、スキーマファイル、配備記述子、およびテスト用の入力ファイルが含まれます。このプロセスの Web サービスインタフェースは単一の非同期操作です。

予想される所要時間: 30

チュートリアルの要件

次に進む前に、この節の要件を確認してください。

前提条件

このチュートリアルでは、Java 言語、Java プラットフォーム、および NetBeans IDE の基本的な知識またはプログラミング経験があることを前提としています。

システム要件

これらのチュートリアルでは、『NetBeans IDE 6.0 リリースノート』の「システム要件」のトピックに指定された要件を、システムが満たしていることが前提になります。

チュートリアルに必要なソフトウェア

始める前に、NetBeans IDE 6.0 と SOA、および GlassFish アプリケーションサーバーをコンピュータにインストールする必要があります。これらは NetBeans IDE 6.0 ダウンロードのページにある「すべて」ダウンロードに含まれます。

ページの先頭へ


GlassFish アプリケーションサーバーの構成と起動

NetBeans 6.0 の完全版のダウンロードをインストールすると、GlassFish アプリケーションサーバーが含まれます。NetBeans IDE は、必要なときに、自動的にアプリケーションサーバーを起動します。

GlassFish アプリケーションサーバーを起動するには、次の手順に従います。

  1. 「サービス」ウィンドウが表示されていない場合は、「ウィンドウ」>「サービス」を選択します。
  2. 「サービス」ウィンドウで「サーバー」ノードを展開します。
    「サーバー」ノードに GlassFish アプリケーションサーバーのサブノードが含まれるはずです。GlassFish アプリケーションサーバーのノードが表示されない場合は、GlassFish アプリケーションサーバーを構成する手順へ進んでください。

 

  1. GlassFish アプリケーションサーバーのノードを右クリックし、「起動」を選択します。
    「出力」ウィンドウに、アプリケーションの起動に関するログ情報が表示されます。「出力」ウィンドウが表示されていない場合は、「ウィンドウ」>「出力」>「出力」を選択します。

    Application server startup complete」というメッセージが「出力」ウィンドウに表示されたら、アプリケーションサーバーは実行中です。
    注: GlassFish アプリケーションサーバーのノードに緑色の矢印のバッジが表示されていれば、そのサーバーは実行中です。

: アプリケーションを GlassFish アプリケーションサーバーに配備すると、サーバーを自動的に起動します。したがって、アプリケーションサーバーを手動で起動する必要はありません。

注: 次の手順は、GlassFish V2 アプリケーションサーバーの別のバージョンを使用するように IDE を構成する方法を示しています。

GlassFish V2 アプリケーションサーバーを構成するには、次の手順に従います。

NetBeans 6.0 に付属のアプリケーションサーバーとは別のバージョンを使用したいことがあるでしょう。たとえば、GlassFish V2 アプリケーションサーバーの最新バージョンを GlassFish コミュニティーのサイトからダウンロードし、インストールしたい場合です。

次の手順は、GlassFish V2 アプリケーションサーバーの別のバージョンを使用するように NetBeans 6.0 IDE を構成する方法を示しています。アプリケーションサーバーの別のバージョンをすでにダウンロードし、インストールしてあることを前提としています。

  1. 「サービス」ウィンドウで「サーバー」ノードを右クリックし、ポップアップメニューから「サーバーを追加」を選択します。
    「サーバーインスタンスの追加」ダイアログが開きます。
  2. 「サーバーを選択」ページで、リストから GlassFish V2 を選択します。
  3. 「次へ」をクリックします。
    「プラットフォームフォルダの場所」ページが開きます。
  4. 「プラットフォームの場所」フィールドの「参照」ボタンを使用して、アプリケーションサーバーのインストール場所に移動して、選択します。

    GlassFish アプリケーションサーバーをデフォルトの場所にインストールした場合、表 1 をインストール場所の参考にしてください。さもなければ、GlassFish V2 アプリケーションサーバーをインストールした場所を指定してください。

    表 1: アプリケーションサーバーのデフォルトのインストールディレクトリ

    プラットフォーム インストールしたユーザー SOA インストール ツール付きバンドルインストール
    Solaris OS
    Linux
    root /opt/glassfish-v2 /opt/SUNWappserver
    Solaris OS
    Linux
    user ~/glassfish-v2 ~/SUNWappserver
    Mac OS X N/A /Applications/NetBeans/glassfish-v2b58g /Applications/NetBeans/NetBeans 6.0
    Windows N/A C:\Program Files\glassfish-v2-b58g C:\Sun\AppServer
  5. 「ローカルのデフォルトドメインを登録」ラジオボタンを選択し、「次へ」をクリックします。
  6. ドメインの管理者のユーザー名とパスワードを入力します。
    インストール時にデフォルト値のままにした場合、ユーザー名は admin で、パスワードは adminadmin です。
  7. 「完了」をクリックします。

ページの先頭へ

AsynchronousSample プロジェクトのオープン

  1. IDE のメインメニューから、「ファイル」>「新規プロジェクト」を選択します。
    「新規プロジェクト」ウィザードが開きます。
  2. 「カテゴリ」リストで、「サンプル」>「SOA」を選択します。
  3. 「プロジェクト」リストで、「 非同期 BPEL プロセス 」を選択します。

    非同期 BPEL プロセスが選択されている

  4. 「次へ」をクリックします。
  5. 「プロジェクト名」フィールドに「 AsynchronousSample 」と入力します。

    プロジェクト名の入力

  6. (省略可能)「プロジェクトの場所」フィールドで、「参照」ボタンを使用して移動し、IDE がプロジェクトファイルを格納する別のフォルダを選択します。
  7. 「完了」をクリックします。
    「プロジェクト」ウィンドウに 2 つのプロジェクトノードが表示されます。1 つは AsynchronousSample という BPEL プロジェクト、もう 1 つは AsynchronousSampleApplication という複合アプリケーションプロジェクトです。

ページの先頭へ


「プロジェクト」ウィンドウでの BPEL および JBI プロジェクトの操作

  1. 「プロジェクト」ウィンドウで、「AsynchronousSample」ノードを展開し、「プロセスファイル」ノードを展開します。
    「プロセスファイル」ノード には、次の項目が入っています。
    • AsynchronousSample.bpel 、BPEL プロセス
    • AsynchronousSample.wsdl 、プロセス Web サービスインタフェース
    • AsynchronousSample.xsd 、スキーマファイル
    • AsynchronousSampleClient.bpel 、テストクライアントプロセス
    • AsynchronousSampleClient.wsdl 、クライアントプロセスの wsdl
  2. 「プロジェクト」ウィンドウで、「 AsynchronousSampleApplication 」ノードを展開します。JBI 配備プロジェクトには、次のものが含まれています。
    • プロセスファイル
    • JBI モジュール
    • テスト

    展開された AsynchronousSample

  3. AsynchronousSample.bpel 」ノードをダブルクリックします。
    次のことに注意してください。
    • ソースエディタに AsynchronousSample.bpel のタブがあります。
    • デザインビューに AsynchronousSample の図が表示されます。
      デザインビューは、ビジネスプロセスのビジュアルデザイナーです。デザインビューでは、ビジネスプロセスを視覚的にモデル化できます。BPEL Design ツールは、ビジュアルデザインに対応する BPEL コードを自動的に生成します。
    • BPEL 要素の「パレット」は、ソースエディタの右側に表示されます。
    • 「ナビゲータ」ウィンドウに、BPEL プロセスの BPEL 論理ビューが表示されます。

    AsynchronousSample.bpel を展開
    クリックして拡大

ページの先頭へ


「プロジェクト」ウィンドウでの AsynchronousSampleClient の操作

AsynchronousSample プロジェクトは非同期 BPEL プロセスです。非同期プロセスのテストには、非同期コールバックを受信できるクライアントが必要です。そのため、プロジェクトには AsynchronousSampleClient BPEL プロセスも含まれます。AsynchronousSampleClient プロセスの唯一の目的は、AsynchronousSample のユニットテストを支援することです。

  1. AsynchronousSampleClient.bpel 」ノードをダブルクリックします。
    AsynchronousSampleClient の図がデザインビューに表示されます。
    AsynchronousSample (partnerLinkB) は、AsynchronousSampleClient に対する呼び出しを行なって応答を返します。

    AsynchronousSampleClient の図

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

    相互関係セット編集エディタ

ページの先頭へ


Application Server へのプロジェクトの配備

BPEL プロジェクトは直接配備できません。JBI モジュールとして複合アプリケーションプロジェクトに追加する必要があります。そのあと、複合アプリケーションプロジェクトを配備できます。プロジェクトを配備すると、アプリケーション サーバーがサービスアセンブリを使用できるようになり、それによって、サービスユニットを実行できます。

  1. AsynchronousSampleApplication」>「JBI モジュール」を展開します。
    AsynchronousSample.jar」ノードが追加されていることを確認します。

    AsynchronousSample.jar が複合アプリケーションプロジェクトに追加されたところ

  2. AsynchronousSampleApplication」プロジェクトノードを右クリックし、「配備」を選択します。
  3. 「警告」ダイアログで、「GlassFish V2」が選択されていることを確認し、「了解」をクリックします。
  4. 配備に成功すると、「出力」ウィンドウに次のメッセージが表示されます。

    成功した配備

  5. 「出力」ウィンドウが表示されていない場合は、「ウィンドウ」>「出力」を選択します。

ページの先頭へ


AsynchronousSampleApplication のテスト

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

    NewTestcase0

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

    NewTestcase0 成功

関連項目


ページの先頭へ

Bookmark this page

del.icio.us furl simpy slashdot technorati digg
Companion
Projects:
MySQL Database Server   Open JDK: an Open SourceJDK   GlassFish Community: an Open Source Application Server    Mobile & Embedded Community    Open Solaris   java.net - The Source for Java Technology Collaboration   Virtual Box - full virtualizer  Open ESB - The Open Enterprise Service Bus Powered by