ビジネス プロセス構築ガイド

     前  次    新しいウィンドウで目次を開く     
ここから内容

クライアントとの対話

クライアントは 1 つまたは複数のオペレーションを実行するためにビジネス プロセスを呼び出します。ビジネス プロセスの機能は、メソッドを通してクライアントにエクスポーズされます。

Client Request ノードは、クライアントがビジネス プロセスのメソッドを呼び出し、場合によっては、入力をビジネス プロセスに送信するビジネス プロセス内のポイントを表します。Client Request ノードでメソッドに割り当てた名前は、ビジネス プロセスを Web サービスとして利用可能にする際に、Web Services Description Language (WSDL) を介してエクスポーズされるメソッド名に対応します。

注意 : ビジネス プロセスのノードは、常にクライアントと非同期で通信しています。ただし、[Client Request with Return] オプションを使用してビジネス プロセスの Start ノードを呼び出す場合、またはメッセージ パスの開始イベントをコンフィグレーションして [Client Request with Return] を待機する場合を除きます。Client Request with Return ノードの使用方法の詳細については、「戻り値のあるクライアント要求開始 (同期)」を参照してください。

Client Response ノードは、ビジネス プロセスがクライアントにメッセージを送信するビジネス プロセス内のポイントを表します。

この節では、ビジネス プロセスにノードを追加する方法と、ビジネス プロセスとクライアントの対話を設計する方法について説明します。内容は以下のとおりです。

クライアントからメッセージを受信する

Client Request ノードは、クライアントがビジネス プロセスに要求を行う手段を提供します。

Client Request ノードの設計に必要なタスクには、以下のようなものがあります。

ビジネス プロセスでの Client Request ノードの作成

  1. [パッケージ・エクスプローラー] ペインで、設計するビジネス プロセス (Process.java ファイル) をダブルクリックします。ビジネス プロセスはデザイン ビューに表示されます。
  2. [ノード パレット] が BEA Workshop for WebLogic Platform に表示されない場合、BEA Workshop for WebLogic Platform メニューから、[ウィンドウArrow symbolビューの表示Arrow symbolノード パレット] を選択します。
  3. [Client Request] を [ノード パレット] から、デザイン ビューのビジネス プロセス上にドラッグ アンド ドロップし、クライアント対話を設計するポイントのビジネス プロセス上に配置します。
  4. 注意 : 選択内容をデザイン ビュー上にドラッグすると、ビジネス プロセス上に対象 が表示されます。各対象は、ノードを配置できるフロー中の場所を表します。場所の近くにノードをドラッグすると、対象がアクティブになり 、カーソルが矢印 に変わります。ここでマウスのボタンを放すと、ビジネス プロセスのアクティブになったターゲットで示される場所に、ノードが設定されます。選択した場所が有効ではない場合、ノードの隣に が表示されます。このアイコンの上にカーソルを置くと、BEA Workshop for WebLogic Platform により違反に関するメッセージが表示されます。

    デザイン ビューのビジネス プロセスに Client Request ノードが表示されます。

Client Request ノードの以下のプロパティに注意してください。

Client Request ノードの設計

任意のノードをビジネス プロセスに追加した後は、そのノード ビルダを呼び出してノードに適したタスクを完了し、そのプロパティおよび動作を設計できます。以下の節では、Client Request ノードで、クライアントとの対話を設計する方法について説明します。

一般的な設定を指定するには
  1. ビジネス プロセスの Client Request ノードをダブルクリックします。
  2. ノード ビルダが表示されます。これには、[一般的な設定] および [データの受信] の 2 つのタブがあります。

  3. [一般的な設定] タブで、[メソッド名] フィールドに名前を入力し、この Client Receive ノードのメソッド名を指定します。
  4. メソッドに割り当てた名前は、ビジネス プロセスを Web サービスとして利用可能にする際に、Web Services Description Language (WSDL) を介してエクスポーズされるメソッド名です。プロジェクトのメソッドをクライアントにエクスポーズする方法については、「アプリケーションのコンポーネント」を参照してください。

  5. [一般的な設定] タブで、[追加] をクリックし、Client Request ノードによりクライアントから受信することが予想されるデータ型および形式を選択します (メソッド パラメータのデータ型)。ノード ビルダは以下のデータ型を表示します。
    • 単純型
    • Java の基本データ型およびクラスのデータ型を示します。

    • XML 型
    • ビジネス プロセス プロジェクトで利用できる XML スキーマ、型なしの XMLObject、および XMLObjectList データ型を示します。プロジェクトにスキーマをインポートする方法については、「スキーマ ファイルの作成とインポート」を参照してください。

    • 非 XML 型
    • ビジネス プロセス プロジェクトで利用できるメッセージ フォーマット言語 (Message Format Language : MFL) ファイルおよび型なしの RawData データ型を示します。WebLogic Integration では、XML に基づき、メッセージ フォーマット言語 (MFL) と呼ばれるメタデータ言語を使用し、非 XML データの構造を記述します。プロジェクトで利用できる各 MFL ファイルは、非 XML 型に表示されます。各 MFL ファイルの XML スキーマの表示は、WebLogic Workshop により構築され、XML 型のリストでも利用できます。

      データ型の詳細については、「データ型の操作」を参照してください。

  6. [OK] をクリックします。
  7. 指定したパラメータが、ノード ビルダの [一般的な設定] タブに表示されます。

    注意 : 前述の手順で型付きの XML または型付きの非 XML データ型を選択した場合は、[検証] ボックスを選択し、ノードがメッセージを受信する前に、指定したスキーマに対して着信するメッセージを検証できます。スキーマの詳細については、「スキーマの検証」および「スキーマ ファイルの作成とインポート」を参照してください。
データの受信を指定するには
  1. [データの受信] タブをクリックします。
  2. このタブでは、1 つまたは複数の変数を定義し、ビジネス プロセスがクライアントから受信するデータを保持できます。

  3. メソッド パラメータのデータ型および使用する変数のデータ型が一致する場合は、対応するメソッドに変数を直接マッピングできます。
    1. [変数の割り当て] オプションを選択していない場合は、選択してください。デフォルトでは、[データの受信] タブ上に [変数の割り当て] パネルが開きます。
    2. [クライアントが送信する値] フィールドには、[一般的な設定] タブで指定したパラメータが移入されます。

    3. プロジェクトに作成した変数をメソッド パラメータに割り当てる場合は、それをドロップダウン メニューから選択します。
    4. 新しい変数を作成し、メソッド パラメータに割り当てる場合は、[割り当てる変数を選択します] で矢印をクリックして [変数の新規作成...] を選択し、「ノード ビルダに新しい変数を作成するには」の指示に従ってください。
    5. メソッド パラメータのデータ型および変数が一致する場合には、[OK] をクリックします。新しい変数が作成され、[データの受信] タブに表示されます。
  4. メソッド パラメータのデータ型と変数が異なる場合は、BEA Workshop for WebLogic Platform に附属するトランスフォーメーション ツールを使用し、異種のデータ型間でマッピングできます。このツールを使って作成するデータ トランスフォーメーションは、データ トランスフォーメーション ファイルに保存されます。データ トランスフォーメーションが入っているデータ トランスフォーメーション ファイルは、コントロールとして構築されます。コントロールは、トランスフォーメーション メソッドをエクスポーズし、それをビジネス プロセスにより呼び出して異種のデータ型をマッピングします。
    1. トランスフォーメーション マップを作成するには、[トランスフォーメーション] オプションを選択します。
    2. ノード ビルダ トランスフォーメーション画面が表示され、メソッドにより予想されるデータ型が [クライアントが送信する値] ペインに表示されます。

    3. [トランスフォーメーション] オプション ウィンドウの [手順 1] で、[変数の選択] をクリックし、使用する 1 つまたは複数の変数を選択します。
    4. 注意 : ノード ビルダ ペインから変数を削除するには、このリストの変数を選択し、[削除] をクリックします。この操作により、ビジネス プロセスからではなく、ノード ビルダから変数が削除されます。変数は、まだビジネス プロセスに入っており、[データ パレット] の [変数] ペインに表示されます。

      ビジネス プロセスを設計する際、トランスフォーメーションを使用し、異種のデータ型の間のマップを作成します。プロジェクトには、マップを作成する [トランスフォーメーション] コントロールのインスタンスが含まれている必要があります。

    5. トランスフォーメーション コントロールの適切なインスタンスがプロジェクトで利用できない場合は、[トランスフォーメーションの作成] をクリックし、 XQuery Mapper トランスフォーメーション ツール ウィンドウを呼び出し、新しいインスタンスを作成できます。この操作により、自動的に変更をビルダに適用し、新しいウィンドウでトランスフォーメーション エディタを開きます。
    6. マッピング ツールにより、ソース スキーマおよびターゲット スキーマが [ソース] および [対象] ペインに表示されます。メソッド パラメータのデータ型および 1 つまたは複数の変数のデータ型の間のマップを作成し、それにデータを割り当てることができます。マッピング ツールを使用してマップを作成およびテストする方法については、データ トランスフォーメーション ガイドを参照してください。

      注意 : ノード ビルダに戻るには、[パッケージ・エクスプローラー] ペインで Process.java ファイルをダブルクリックします。
    7. トランスフォーメーション コントロールの適切なインスタンスがプロジェクトで利用できる場合は、[詳細...] をクリックします。[詳細オプション] ウィンドウが開きます。このウィンドウで、[コントロール] および [メソッド] を選択します。メソッド引数および戻り値型が [トランスフォーメーション] ペインで選択したものに一致する場合は、[OK] をクリックします。
    8. [OK] をクリックし、トランスフォーメーション ツールを閉じます。
  5. ノード ビルダを閉じるには、[閉じる] をクリックします。
  6. デザイン ビューでは、 アイコンにより、このノードのコンフィグレーションおよび設計が完了したことが示されます。

注意 : ノード ビルダの [トランスフォーメーション] ペインで設計するコンフィグレーションの変更の詳細については、「ノード コンフィグレーションの編集について」を参照してください。
  1. 作業内容を保存するには、[ファイルArrow symbol保管] を選択します。

Client Request ノードにおけるメソッドの命名

Client Request ノードでメソッドに割り当てた名前は、ビジネス プロセスを Web サービスとして利用可能にする際に、Web Services Description Language (WSDL) を介してエクスポーズされるメソッド名に対応します。この名前は、有効な Java クラス名であることが必要です。

関連トピック

メッセージのクライアントへの送信

クライアント メッセージのバッファリング

XQuery 文

例外の処理

クライアント操作およびコントロール コミュニケーション メソッド

メッセージ パスの追加

タイムアウト パスの追加

メッセージのクライアントへの送信

Client Response ノードは、クライアントにメッセージを送信する手段を提供します。Client Response ノードの設計に必要なタスクには、以下があります。

ビジネス プロセスでの Client Response ノードの作成

  1. [パッケージ・エクスプローラー] ペインで、設計する Process.java ファイルをクリックします。ビジネス プロセスがデザイン ビューに表示されます。
  2. [ノード パレット] が BEA Workshop for WebLogic Platform に表示されない場合、BEA Workshop for WebLogic Platform メニューから、[ウィンドウArrow symbolビューの表示Arrow symbolノード パレット] を選択します。
  3. [ノード パレット] の [ Client Response] をクリックします。
  4. Client Response ノードをデザイン ビューのビジネス プロセス上にドラッグ アンド ドロップし、クライアントにメッセージを送信するビジネスプロセス中のポイントにあるビジネス プロセス上に配置します。
  5. 注意 : 選択内容をデザイン ビュー上にドラッグすると、ビジネス プロセス上に対象 が表示されます。各対象は、ノードを配置できるフロー中の場所を表します。場所の近くにノードをドラッグすると、対象がアクティブになり 、カーソルが矢印 に変わります。ここでマウスのボタンを放すと、ビジネス プロセスのアクティブになったターゲットで示される場所に、ノードが設定されます。選択した場所が有効ではない場合、ノードの隣に が表示されます。このアイコンの上にカーソルを置くと、BEA Workshop for WebLogic Platform により違反に関するメッセージが表示されます。

    デザイン ビューのビジネス プロセスに Client Response ノードが表示されます。

Client Response ノードの以下のプロパティに注意してください。

Client Response ノードの設計

以下の節では、Client Response ノードで、クライアントとの対話を設計する方法について説明します。

一般的な設定を指定するには
  1. ビジネス プロセスの [Client Response] ノードをダブルクリックします。
  2. ノード ビルダが表示されます。これには、[一般的な設定] および [データの送信] の 2 つのタブがあります。

  3. [一般的な設定] タブで、[メソッド名] フィールドに名前を入力し、この Client Response ノードのメソッド名を指定します。
  4. [一般的な設定] タブで、[追加] をクリックし、Client Response ノードによりクライアントに送信することが予想されるデータ型および形式を選択します (メソッド パラメータのデータ型)。ノード ビルダは以下のデータ型を表示します。
    • 単純型
    • Java の基本データ型およびクラスのデータ型を示します。

    • XML 型
    • ビジネス プロセス プロジェクトで利用できる XML スキーマを示します。スキーマをプロジェクトにインポートする方法について。

    • 非 XML 型
    • ビジネス プロセス プロジェクトで利用できるメッセージ形式言語 (MFL) ファイルを示します。WebLogic Integration では、XML に基づき、メッセージ フォーマット言語 (MFL) と呼ばれるメタデータ言語を使用し、非 XML データの構造を記述します。プロジェクトで利用できる各 MFL ファイルは、非 XML 型に表示されます。各 MFL ファイルの XML スキーマの表示は、WebLogic Workshop により構築され、XML 型のリストでも利用できます。

  5. [OK] をクリックします。
  6. サポートされている型のリストからデータ型を選択すると、フィールドが移入されます。

データの送信を指定するには
  1. [データの送信] タブをクリックします。
  2. このタブでは、1 つまたは複数の変数を定義し、ビジネス プロセスによりクライアントに送信するデータを保持できます。

  3. メソッド パラメータのデータ型および使用する変数のデータ型が一致する場合は、対応するメソッドに変数を直接マッピングできます。
    1. [変数の割り当て] オプションを選択していない場合は、選択してください。デフォルトでは、[データの送信] タブにより [変数の割り当て] パネルが開きます。
    2. [クライアントが予期する値] フィールドには、[一般的な設定] タブに指定したパラメータが移入されます。

    3. プロジェクトに作成した変数をメソッド パラメータに割り当てる場合は、それをドロップダウン メニューから選択します。
    4. 新しい変数を作成し、メソッド パラメータに割り当てる場合は、[割り当てる変数を選択します] で、矢印をクリックして [変数の新規作成...] を選択し、「ノード ビルダに新しい変数を作成するには」の指示に従ってください。
    5. メソッド パラメータのデータ型および変数が一致する場合には、[OK] をクリックします。新しい変数が作成され、[データの送信] タブに表示されます。
  4. 変数およびメソッド パラメータのデータ型が異なる場合は、BEA Workshop for WebLogic Platform に附属する XQuery Mapper ツールを使用し、異種のデータ型の間をマッピングできます。このツールを使って作成するデータ トランスフォーメーションは、データ トランスフォーメーション ファイルに保存されます。データ トランスフォーメーションが入っているデータ トランスフォーメーション ファイルは、コントロールとして構築されます。コントロールは、トランスフォーメーション メソッドをエクスポーズし、それをビジネス プロセスにより呼び出して異種のデータ型をマッピングします。
    1. トランスフォーメーション マップを作成するには、[トランスフォーメーション] オプションを選択します。
    2. ノード ビルダのトランスフォーメーション画面が表示され、メソッドにより予想されるデータ型が [クライアントが予期する値] ペインに表示されます。

    3. [トランスフォーメーション] タブの [手順 1] で、[変数の選択] をクリックし、使用する 1 つまたは複数の変数を選択します。
    4. 注意 : ノード ビルダ ペインから変数を削除するには、このリストの変数を選択し、[削除] をクリックします。この操作により、ビジネス プロセスからではなく、ノード ビルダから変数が削除されます。変数は、まだビジネス プロセスに入っており、[データ パレット] の [変数] ペインに表示されます。

      ビジネス プロセスを設計する際、トランスフォーメーションを使用し、異種のデータ型の間のマップを作成します。プロジェクトには、マップを作成する [トランスフォーメーション] コントロールのインスタンスが含まれている必要があります。

    5. プロジェクトでトランスフォーメーション コントロールの適切なインスタンスが利用できない場合は、[トランスフォーメーションの作成] をクリックし、トランスフォーメーション マッパー ツール ウィンドウを呼び出して、新たなインスタンスを作成できます。
    6. マッピング ツールにより、ソース スキーマおよびターゲット スキーマが [ソース] および [対象] ペインに表示されます。メソッド パラメータのデータ型および 1 つまたは複数の変数のデータ型の間のマップを作成し、それにデータを割り当てることができます。

      注意 : ノード ビルダに戻るには、[パッケージ・エクスプローラー] ペインで Process.java ファイルをダブルクリックします。
    7. [トランスフォーメーション] コントロールの適切なインスタンスがプロジェクトで利用できる場合は、[詳細オプション] をクリックします。[詳細オプション] ウィンドウが開きます。このウィンドウで、[コントロール] および [メソッド] を選択します。メソッド引数および戻り値型が [トランスフォーメーション] ペインで選択したものに一致する場合は、[OK] をクリックします。
    8. ノード ビルダを閉じるには、[閉じる] をクリックします。
    9. デザイン ビューでは、 アイコンにより、このノードのコンフィグレーションおよび設計が完了したことが示されます。

注意 : ノード ビルダの [トランスフォーメーション] ペインで設計するコンフィグレーションの変更の詳細については、「ノード コンフィグレーションの編集について」を参照してください。
  1. 作業内容を保存するには、[ファイルArrow symbol保管] を選択します。

動的コールバック プロパティの追加

XQuery 動的セレクタを使用して、Client Response ノードの動的コールバック プロパティを設定することができます。動的セレクタでは、LookupControl または TPM 関数に基づくルックアップ プロパティをコンフィグレーションできます。その後、実行時にクライアントに対するコールバックのセキュリティが、動的セレクタで指定されたルックアップ プロパティ値に基づいて異なって処理されるように WebLogic Integration Administration Console のビジネス プロセスをコンフィグレーションできます。

動的コールバック プロパティを設定するには
  1. 動的コールバック プロパティを設定する Client Response ノードを選択します。
  2. [アノテーション] ペインで、[ReturnXml] セクションの [xquery] フィールドに Dynnamic Selector XQuery データを入力します。
  3. 動的コールバック プロパティに関するセキュリティ情報の設定の詳細については、『WebLogic Integration Administration Console の使用』の「動的コントロール セレクタの追加または変更」を参照してください。

  4. 作業内容を保存するには、[ファイルArrow symbol保管] を選択します。

関連トピック

クライアントからメッセージを受信する

クライアント メッセージのバッファリング

例外の処理

クライアント操作およびコントロール コミュニケーション メソッド

クライアント メッセージのバッファリング

ビジネス プロセス アプリケーションのスケーラビリティを確保するため、クライアントの着信メッセージは、デフォルトでは Web アプリケーションのキューにバッファリングされます。

クライアントへの送信メッセージはデフォルトではバッファリングされませんが、同じ Web アプリケーション キューでバッファリングされるようにコンフィグレーションできます。

送信クライアント メッセージをバッファリングするには
  1. バッファリングするコールバック メソッドで設定されている Client Response ノードを選択します。
  2. [アノテーション] ペインの [message buffer] アノテーションで、以下を実行します。
    1. enable 属性ドロップダウン メニューから、true を選択します。
    2. retry-count 属性を選択し、コールバック メソッドの値を入力します。これにより、キューに対してプロセス エンジンがメッセージの送信を試みる回数が指定されます。
    • retry-delay 属性を選択し、コールバック メソッドの値を入力します。これにより、再試行までの経過時間 (秒) を指定します。

これで Client Response ノードでのコールバック メソッドの設定が完了し、コールバック メッセージはバッファリングされるように設定されます。

注意 : ビジネス プロセスは、メッセージがクライアントに配信されたときではなく、待ち行列に無事に入ったときにバッファリングされたオペレーションが完了したと見なします。
  1. 作業内容を保存するには、[ファイルArrow symbol保管] を選択します。

関連トピック

クライアントからメッセージを受信する

メッセージのクライアントへの送信

例外の処理

クライアント操作およびコントロール コミュニケーション メソッド


  ページの先頭       前  次