BEA ホーム | 製品 | デベロッパ・センタ | support | askBEA
 ドキュメントのダウンロード   サイト マップ   用語集 
検索

B2B Integration ワークフローの作成

 前 次 目次 索引 PDFで表示  

ビジネス メッセージの送受信

以下の節では、協調的ワークフローでビジネス メッセージを送受信する方法について説明します。

注意: RosettaNet プロトコルに基づく会話とワークフローを実装する場合、手順については『B2B Integration RosettaNet の実装』を参照してください。 これらの手順は RosettaNet 1.1 および 2.0 プロトコルに基づいています。

このドキュメントで説明する B2B 機能でサポートしている XOCP ビジネス プロトコルは、WebLogic Integration の本リリースより廃止されています。 XOCP の代替となるビジネス プロトコルに関する詳細については、『WebLogic Integration リリース ノート』を参照してください。

 


ビジネス メッセージを送信するワークフローの定義

WebLogic Integration Studio で Compose Business Message アクションまたは Manipulate Business Message アクションを使用してビジネス メッセージを作成した後は、Send Business Messageアクションを使用してそのビジネス メッセージを送信します。 この節では、トレーディング パートナにビジネス メッセージが送信されるように、協調的ワークフローで Send Business Message アクションを定義する方法について説明します。

Send Business Message アクションを定義するには、次の手順を行います。

  1. アクションを指定できるダイアログ ボックス([タスクのプロパティ]、[分岐のプロパティ]、[イベントのプロパティ]、[開始のプロパティ] ダイアログ ボックスなど)で、[追加] をクリックして [アクションを追加] ダイアログ ボックスを表示します。

    図5-1 [アクションを追加] ダイアログ ボックス


     

  2. [統合アクション] フォルダをクリックして展開します。

    図5-2 [アクションを追加] ダイアログ ボックスと統合アクション


     

  3. [B2B Integration] フォルダをクリックして展開します。

  4. [Send Business Message] を選択します。 [OK] をクリックして、[ビジネス メッセージの送信] ダイアログ ボックスを表示します。

[ビジネス メッセージの送信] ダイアログ ボックスのどの部分が表示されるかは、ワークフロー テンプレートがコンフィグレーションされているプロトコルによって異なります。 以降の節では、B2B Integration プラグインでサポートされているプロトコルごとに、このダイアログ ボックスの内容を指定する方法について説明します。

XOCP 1.1 プロトコルを使用したビジネス メッセージの送信(非推奨)

XOCP 1.1 プロトコルでコンフィグレーションされたワークフロー テンプレートの [アクション] ダイアログ ボックスで ビジネス メッセージの送信 アクションを選択すると、次のダイアログ ボックスが表示されます。

図5-3 XOCP メッセージの [ビジネス メッセージの送信] ダイアログ ボックス


 

[ビジネス メッセージの送信] ダイアログ ボックスでは以下のタブが表示されます。

[ビジネス メッセージの送信] ダイアログ ボックスの以下のフィールドを設定します。

表5-1 [ビジネス メッセージの送信] ダイアログ ボックスのフィールド

フィールド

説明

[入力メッセージ変数]

送信するビジネス メッセージが格納される Java Object 型のワークフロー変数の名前

[ルータ式の型]

ルータ式 フィールドの内容(トレーディング パートナ名、XPath 式、または変数名)。 ルータ式は WebLogic Integration リポジトリで指定されたルータ式でオーバーライドされる場合がある。 ルータの詳細については、『B2B Integration 管理者ガイド』の「高度なコンフィグレーション タスク」を参照。

この選択ボックスでは、以下の値を選択できる。

[ルータ式]

メッセージの送信時に使用されるルータ式。

このフィールドが空白の場合は、NULL フィルタが使用される。 ルータ式の詳細については、『B2B Integration 管理者ガイド』の「高度なコンフィグレーション タスク」を参照。

[対象ロール]

メッセージが送信される会話の中のロール(必須フィールド)

[会話 QoS を使用]

ワークフロー テンプレートが XOCP プロトコルでコンフィグレーションされている場合は、このチェック ボックスが表示される。このチェック ボックスでは、テンプレート レベルまたはこの Send Business Messageアクション レベルで定義されたサービス品質のどちらを使用するのかを指定できる。

[メモ]

説明テキスト(省略可能)


 

メッセージ トークン情報のワークフロー変数への割り当て

ビジネス メッセージが B2B メッセージング サービスによって送信されるときには、メッセージ トークンがプログラミング レベルで Java オブジェクトとして返されます。 メッセージ トークンは、メッセージについての情報を提供します。その情報には、メッセージ ID、会話 ID、送信の成否、配信ステータス、および B2B エンジンによる最終選択(ルータおよびフィルタの評価)の後の受信側数などがあります。 アプリケーションでは、getVariable メソッドを呼び出してこの変数にアクセスします。

この変数は、ワークフロー終了後に処理される出力変数として定義できます。 メッセージ トークンは、com.bea.b2b.protocol.messaging.MessageToken クラスで表されます。このクラスの詳細については、『BEA WebLogic Integration Javadoc』を参照してください。

協調的ワークフローは、トークンとその情報をワークフロー変数に割り当ててメッセージ トークンにアクセスできるようにコンフィグレーションできます。 実行時において、ビジネス メッセージの送信 アクションが完了した後に値がワークフロー インスタンス変数に割り当てられます。

メッセージ トークンと関連情報をワークフロー変数に割り当てるには、次の手順を行います。

  1. ビジネス メッセージを送信するワークフローの定義の説明に従って [ビジネス メッセージの送信] ダイアログ ボックスを開きます。

  2. [ビジネス メッセージの送信] ダイアログ ボックスで [トークン] タブをクリックします。

    図5-4 [トークン] タブ


     

    注意: このダイアログ ボックスで利用可能なオプションは、選択したサービス品質の設定によって異なります。詳細については、ワークフロー テンプレートでの XOCP メッセージ配信のサービス品質の定義(非推奨)を参照してください。

  3. [トークン] タブの以下のフィールドを設定します。

    表5-2 [トークン] タブのフィールド

    フィールド

    説明

    [トークン変数]

    返されたメッセージ トークンを Java Object 型のワークフロー変数に割り当てる。 このオブジェクトは、処理を目的としてビジネス オペレーションにのみ渡すことができる。

    [送信ステータス]

    メッセージが正常に送信されたかどうかを示す(成功の場合は true、失敗の場合は false)。 その値は、ワークフローからアクセスできるか、ビジネス オペレーションに渡すことができる Boolean 型のワークフロー変数に割り当てる。

    [最初の受信側の数]

    メッセージがルータを経由した後に B2B エンジンによって割り当てられた受信側の数。 その値は、ワークフローからアクセスできるか、ビジネス オペレーションに渡すことができる Integer 型のワークフロー変数に割り当てる。

    このフィールドは、[QoS メッセージ配信確認] 設定が以下のいずれかである場合にのみ表示される。

    [実際の受信側の数]

    受信側の実際の数。 その値は、ワークフローからアクセスできるか、ビジネス オペレーションに渡すことができる Integer 型のワークフロー変数に割り当てる。

    このフィールドは、[QoS メッセージ配信確認] 設定が [すべての送り先] である場合にのみ表示される。

    [Ack 経過時間 (ms)]

    確認応答がすべての受信側から送信されるのに要する時間(ミリ秒単位)。 このフィールドの値は、ワークフローからアクセスできるか、ビジネス オペレーションに渡すことができる Long 型のワークフロー変数に割り当てる。

    このフィールドは、[QoS メッセージ配信確認] 設定が [すべての送り先] である場合にのみ表示される。

    [メモ]

    説明テキスト(省略可能)


     

    ビジネス メッセージが同期送信の配信オプションを使用して送信された場合、メッセージ トークンを使用して応答確認を待機することはできません。 この目的で使用した場合は、メソッドが即座に返されます。

Send Business Messageアクションでのメッセージ配信のサービス品質の定義(非推奨)

サービス品質(QoS)は、XOCP プロトコルを使用したビジネス メッセージの信頼性を高めるために定義する属性のセットです。 QoS は、Studio を使用して以下のレベルで定義できます。

Send Business Messageレベルで QoS を定義するには、次の手順を行います。

  1. [ビジネス メッセージの送信] ダイアログ ボックスで [会話 QoS を使用] チェック ボックスが選択されていないことを確認します。

  2. [ビジネス メッセージの送信] ダイアログ ボックスで [QoS] タブを選択します。

    [QoS] タブが表示されます。

    図5-5 [ビジネス メッセージの送信] ダイアログ ボックスの [QoS] タブ


     

  3. 表 2-3 の説明に従って [QoS] タブのフィールドを設定します。

  4. [OK] をクリックします。

注意: ここで指定した定義は、この会話のすべての送信アクションにではなくこの Send Message アクションにのみ適用されます。

RosettaNet ビジネス メッセージの送信

WebLogic Integration ではリリース 7.0 より、すべてのビジネス メッセージが同期的に伝送されます。 ビジネス メッセージの同期的送信には次の利点があります。 ビジネス メッセージを送信するタスク ノードが実行を完了したら、必要に応じて即時にワークフローのプロセスを次のノードへ進めることができます。 ビジネス メッセージの返信ステータスを待っている間、ワークフローの実行を待機する必要がありません。

ビジネス メッセージを同期的に送信するワークフローを設計する場合は、次の定義を行います。

7.0 以前のバージョンの WebLogic Integration を使用して作成された RosettaNet をベースとするワークフローをご使用の場合は、ビジネス メッセージの送信方法を変更する必要があります。 既存の RosettaNet ベースのワークフローから現在の WebLogic Integration リリースへ移行する詳しい方法については、『WebLogic Integration 移行ガイド』を参照してください。

RosettaNet プロトコルをベースとするワークフローを作成する手順については、『B2B Integration RosettaNet の実装』を参照してください。

次のセクションでは、RosettaNet 1.1 および 2.0 プロトコルを使用してコンフィグレーションされたワークフローのビジネス メッセージを送信する方法について説明します。

RosettaNet 2.0 プロトコルを使用したビジネス メッセージの送信方法を指定する

RosettaNet 2.0 プロトコルでコンフィグレーションされたワークフロー テンプレートのビジネス メッセージを送信するタスク ノードで、[アクション] ダイアログボックスから [ビジネス メッセージの送信] を選択します。 次のダイアログ ボックスが表示されます。

図5-6 RosettaNet 2.0 メッセージの [ビジネス メッセージの送信] ダイアログ ボックス


 

[ビジネス メッセージの送信] ダイアログ ボックスの以下のフィールドを設定します。

表5-3 [ビジネス メッセージの送信] ダイアログ ボックスのボタンとフィールド

フィールド

説明

メッセージ タイプ

送信する RosettaNet 2.0 メッセージのタイプを指定する。 ビジネス メッセージを送信するには、[アクション] をクリックする。

[入力内容変数]

サービス内容を表わす XML データが格納される XML 型のワークフロー変数の名前を指定する。

[入力添付ファイル記述子変数]

RosettaNet メッセージの一部として送信される添付ファイルを説明する XML データが格納されるXML 型のワークフロー変数の名前を指定する。

[メモ]

説明テキスト(省略可能)


 

RosettaNet 2.0 メッセージの送信の詳細については、『B2B Integration RosettaNet の実装』を参照してください。

RosettaNet 1.1 プロトコルを使用したビジネス メッセージの送信方法を指定する

RosettaNet 1.1 プロトコルでコンフィグレーションされたワークフロー テンプレートのビジネス メッセージを送信するタスク ノードで、[アクション] ダイアログボックスから [Send Business Message] を選択します。 次のダイアログ ボックスが表示されます。

図5-7 RosettaNet 1.1 メッセージの [ビジネス メッセージの送信] ダイアログ ボックス


 

[ビジネス メッセージの送信] ダイアログ ボックスの以下のフィールドを設定します。

表5-4 [ビジネス メッセージの送信] ダイアログ ボックスのボタンとフィールド

フィールド

説明

メッセージ タイプ

送信する RosettaNet 1.1 メッセージのタイプを指定する。 ビジネス メッセージを送信するには、[アクション] をクリックする。

[入力内容変数]

サービス内容を表わす XML データが格納される XML 型のワークフロー変数の名前を指定する。

[入力添付ファイル記述子変数]

RosettaNet メッセージの一部として送信される添付ファイルを説明する XML データが格納されるXML 型のワークフロー変数の名前を指定する。

[メモ]

説明テキスト(省略可能)


 

RosettaNet 1.1 メッセージの詳細情報や例については、『B2B Integration RosettaNet の実装』を参照してください。

HTTP ステータス イベント タイムアウト値を指定するタスク ノードを定義する

HTTP ステータス イベント受信のタイムアウト値を指定するタスク ノードを定義するには、次のステップを実行します。

  1. Studio ツールバーで、[タスク作成] をクリックし、次にビジネス メッセージを送信するタスク ノードの近くでワークフロー ダイアグラムの任意の位置をクリックします。

  2. 作成したタスク ノードをダブルクリックします。

    [タスクのプロパティ] ダイアログ ボックスが表示されます。

    図5-8 [タスクのプロパティ] ダイアログ ボックス


     

  3. [タスク名] フィールドに内容を表わすタスク名をつけます。

  4. ウィンドウの [アクション] セクションで [作成時] タブを選択し、[追加] をクリックします。[アクションを追加] ダイアログ ボックスが表示されます。

    図5-9 [アクションを追加] ダイアログ ボックス


     

  5. [タスク アクション] という名前のフォルダを右クリックし、[タスク期日を設定] を選択します。 [タスク期日を設定] ダイアログ ボックスが表示されます。

    図5-10 [タスク期日を設定] ダイアログ ボックス


     

  6. [タスク期日を設定] ダイアログ ボックスの上にあるメニューから [Wait for timeout] を選択します。

  7. ダイアログ ボックスの下の方にある [期日] タブを選択します。 [式に設定] フィールドに適切なタイムアウト値を入力します。 たとえば図5-10では、タイムアウト値は 2 時間に設定されています。


     

    タスク期日の指定に関する詳細については、『WebLogic Integration Studio ユーザーズ ガイド』の「アクションの定義」にある「タスク期日を設定する」を参照してください。

  8. 次の図で示されている [期日に実行するアクション] タブを選択します。

    図5-11 [期日に実行するアクション] タブ


     

  9. [追加] をクリックします。[アクションを追加] ダイアログ ボックスが表示されます。

  10. [アクションを追加] ダイアログ ボックスで [タスク アクション] フォルダを拡張し、次の図にあるように [タスクに完了マークを付ける] を選択します。

    図5-12 [タスクに完了マークを付ける] アクション


     

  11. [OK] をクリックします。 次の図に示す [タスクに完了マークを付ける] ダイアログ ボックスが表示されます。

    図5-13 [タスクに完了マークを付ける] ダイアログ ボックス


     

  12. 現在のタスクを選択し、[OK] をクリックします。

  13. [タスク期日を設定] ダイアログ ボックスで[OK] をクリックします。

  14. [タスクのプロパティ] ダイアログ ボックスで [OK] をクリックます。

  15. ワークフローを保存します。

HTTP ステータス イベントを受け取るイベント ノードを定義する

HTTP ステータス イベントを受け取るイベント ノードを作成するには、次のステップを実行します。

  1. Studio ツールバーで、[イベント作成] をクリックし、次にビジネス メッセージを送信するタスク ノードの近くでワークフロー ダイアグラムの任意の位置をクリックします。

  2. [イベント] ノードをダブルクリックします。 [イベントのプロパティ] ダイアログ ボックスが表示されます。

    図5-14 [イベントのプロパティ] ダイアログ ボックス


     

  3. [イベントのプロパティ] ダイアログ ボックスで、[説明] フィールドに、たとえば StatusEvent のように適切なイベント名を入力します。

  4. [タイプ] フィールドで [RosettaNet Status Event] を選択します。

  5. [Output Status Variable] ドロップダウン リストから、HTTP ステータス値の格納に適した変数を選択します。

  6. [アクション] タブから [追加] を選択します。

    [アクションを追加] ダイアログ ボックスが表示されます。

  7. [タスク アクション] フォルダを開き、[タスクに完了マークを付ける] を選択して [OK] をクリックします。

    [タスクに完了マークを付ける] ダイアログ ボックスが表示されます。

  8. HTTP ステータス イベントを受け取るイベント ノードを定義する で作成したタスクを選択し、[OK] をクリックします。

  9. [イベントのプロパティ] ダイアログ ボックスで [OK] をクリックます。

[ビジネス メッセージの送信] に関連付けられているノードを接続する

[ビジネス メッセージの送信] タスクに関連付けられているノードを定義したら、次は接続です。 Studio には、ワークフローのノードを接続する方法が 2 つあります。

次の図は、RosettaNet ベースのワークフローにおける、同期的 ビジネス メッセージの送信 タスクと 4 つのノード(T5、T8、C1 および E1)の関連付けの例です。

図5-15 ビジネス メッセージの送信 ワークフロー


 

[ビジネス メッセージの送信] タスクに関連付けられているノードの定義と接続が終了したら、タイムアウト値を指定するタスクノードから分岐ノードに移行します。 分岐ノードでは、HTTP ステータスを評価し、必要に応じて実行のフローを定義します。

 


ビジネス メッセージを受信するワークフローの定義

ワークフローは、以下の状況でビジネス メッセージを受信できます。

以降の節では、B2B Integration プラグインでサポートされている各プロトコルで、ビジネス メッセージを受信するようにワークフローを設定する手順を説明します。

Business Message Receive イベントの定義

ワークフローがビジネス メッセージ(要求に対する応答や、それ以降の要求など)を受信するために待機する場合は、Business Message Receive イベントを定義する必要があります。 このイベントは、実行時において適切なビジネス メッセージが会話で受信されたときにトリガされます。

Business Message Receive イベントを定義するには、次の手順を行います。

  1. WebLogic Integration Studio ユーザーズ ガイド』の「ワークフロー テンプレートの定義」の説明に従ってイベント ノードを表示または追加します。

  2. イベント シェイプをダブルクリックするか、フォルダ ツリーでイベント シェイプを右クリックし、[プロパティ] コマンドを選択して [イベントのプロパティ] ダイアログ ボックスを表示します。

    図5-16 [イベントのプロパティ] ダイアログ ボックス


     

  3. [説明] フィールドで、Receive Business Message イベントの意味のわかる名前を入力します。

  4. [タイプ] ドロップダウン リストで [Collaboration event] を選択します。

[イベントのプロパティ] ダイアログ ボックスの表示が更新されます。 どの内容が表示されるかは、ワークフロー テンプレートがコンフィグレーションされているプロトコルによって異なります。 以降の節では、B2B Integration プラグインでサポートされているプロトコルごとに、Receive Business Event を定義する方法を説明します。

XOCP 1.1 プロトコルでの Business Message Receive イベントの定義

ワークフロー テンプレートが XOCP 1.1 プロトコルでコンフィグレーションされている場合は、[Conversation event] タイプを選択すると、[イベントのプロパティ] ダイアログ ボックスが次のように更新されます。

図5-17 XOCP メッセージ受信イベントを定義するための [イベントのプロパティ] ダイアログ ボックス


 

XOCP メッセージの Business Message Receive イベントをコンフィグレーションするには、[イベントのプロパティ] ダイアログ ボックスの以下のフィールドで値を選択します。

表5-5 [イベントのプロパティ] ダイアログ ボックスのフィールド

変数

説明

[イベントのタイプ]

[着信ビジネス メッセージ] を選択して、受信ビジネス メッセージを待つイベントを定義する。 会話終了の方法の選択については、会話参加者ワークフローの終了の定義を参照。

[対象変数]

ビジネス メッセージを格納する Java Object 型の対象ワークフロー変数の名前(必須フィールド)

[ルータ式]

XPath 式を格納する String 型のワークフロー変数の名前。 その値は、メッセージを送信するために送信側で使用される XPath 式を表す。 この XPath 式は、現在のメッセージに対する応答を発行するためにルータ式で使用できる。このフィールドはオプション。

[送信側の名前]

メッセージを送信したトレーディング パートナの名前を格納する String 型のワークフロー変数の名前。 [Xpath 変換] チェック ボックスが選択されている場合、この名前は XPath 式に変換される。

[XPath 変換]

このチェック ボックスが選択されている場合、[送信側の名前] フィールドで指定された変数の内容が Send Business Messageアクションでの使用に適した XPath 式に変換される。

選択されていない場合は、[送信側の名前] 変数は送信側の トレーディング パートナの実際の名前として使用されます。


 

実行時にビジネス メッセージが受信されると、イベントがトリガされて、対象変数が受信したばかりのビジネス メッセージに設定されます。 ルータ変数が指定されている場合、その変数には送信側への応答で使用できる XPath 式が格納されます。 詳細については、ビジネス メッセージを送信するワークフローの定義 を参照してください。

RosettaNet 2.0 プロトコルでの Business Message Receive イベントの定義

ワークフロー テンプレートが RosettaNet 2.0 プロトコルでコンフィグレーションされている場合は、[Conversation event] タイプを選択すると、[イベントのプロパティ] ダイアログ ボックスの表示が次のように更新されます。

図5-18 RosettaNet 2.0 メッセージ受信イベントを定義するための [イベントのプロパティ] ダイアログ ボックス


 

RosettaNet 2.0 メッセージの Business Message Receive イベントをコンフィグレーションするには、[イベントのプロパティ] ダイアログ ボックスの以下のフィールドで値を選択します。

表5-6 [イベントのプロパティ] ダイアログ ボックスのフィールド

変数

説明

[内容変数]

RosettaNet 2.0 XML ビジネス ドキュメントの内容を格納する XML 型の対象ワークフロー変数の名前

[添付ファイル記述子変数]

RosettaNet 2.0 メッセージの添付ファイルの内容を格納する XML 型の対象ワークフロー変数の名前


 

実行時にビジネス メッセージが受信されると、イベントがトリガされて、対象変数が受信したばかりのビジネス メッセージに設定されます。 RosettaNet 2.0 プロトコルでコンフィグレーションされたワークフロー テンプレートの Business Message Receive イベントを定義する方法の詳細情報と例については、『B2B Integration RosettaNet の実装』を参照してください。

RosettaNet 1.1 プロトコルでの Business Message Receive イベントの定義

ワークフロー テンプレートが RosettaNet 1.1 プロトコルでコンフィグレーションされている場合は、[Conversation event] タイプを選択すると、[イベントのプロパティ] ダイアログ ボックスの表示が次のように更新されます。

図5-19 RosettaNet 1.1 メッセージ受信イベントを定義するための [イベントのプロパティ] ダイアログ ボックス


 

RosettaNet 1.1 メッセージの Business Message Receive イベントをコンフィグレーションするには、RosettaNet 1.1 XML ビジネス ドキュメントの内容を格納する XML 型の対象ワークフロー変数の名前を選択します。

実行時にビジネス メッセージが受信されると、イベントがトリガされて、対象変数が受信したばかりのビジネス メッセージに設定されます。 RosettaNet 1.1 プロトコルでコンフィグレーションされたワークフロー テンプレートの Business Message Receive イベントを定義する方法の詳細情報と例については、『B2B Integration RosettaNet の実装』を参照してください。

 

ページの先頭 前 次