Oracle Service Bus Console の使い方

     前  次    目次     
ここから内容

プロキシ サービス : メッセージ フロー

メッセージ フローは、プロキシ サービスの実装を定義します。

メッセージ フローの作成、編集、および表示

  1. セッションの作成または編集をまだ行っていない場合は、[作成] をクリックして新しいセッションを作成するか、[編集] をクリックして既存のセッションに入ります。「Change Center の使用」を参照してください。
  2. メッセージ フローを表示または編集するプロキシ サービスを見つけ出します。以下のいずれかの操作を行います。
  3. メッセージ フローを表示または編集するプロキシ サービスの行の  [メッセージ フローの編集] アイコンをクリックします。
    • 選択したプロキシ サービスで、まだメッセージ フローが作成されていない場合は、[メッセージ フローの編集] ページに 1 つのアイコン ( [プロキシ サービス] アイコン) が表示されます。これが、プロキシ サービスの開始ノードです。このアイコンをクリックして、メッセージ フローの作成を開始します。
    • プロキシ サービスにすでにメッセージ フローがある場合は、ページにはフローが図で表示されます。アイコンをクリックして、メッセージ フローの各部を表示または編集します。
    • このページで、メッセージ フローを作成するために実行できる作業の詳細については、「[メッセージ フローの編集] ページ」を参照してください。

  4. [保存] をクリックして、現在のセッションで更新をコミットします。
  5. セッションを終了してコンフィグレーションをランタイムにデプロイするには、[Change Center] の [アクティブ化] をクリックします。

[メッセージ フローの編集] ページ

[メッセージ フローの編集] ページを使用して、プロキシ サービスのメッセージ フローを作成します。

[メッセージ フローの編集] ページの左側のナビゲーション ペインに、メッセージ フロー内のノードとオブジェクトのツリー ビューが表示されます。オブジェクトの詳細が別のページで定義されている場合は、オブジェクトの名前をクリックして、関連付けられているページを表示できます。

右側のペインには、メッセージ フローを作成するためのフィールドが表示されます。メッセージ フローがまだ定義されていない場合、ペインには、サービスの開始ノードを示す 1 つの  [プロキシ サービス] アイコンが含まれます。アイコンをクリックして、サービスのパイプライン ペア ノード、ルート ノード、条件付きブランチ、オペレーション ブランチ、およびエラー処理を追加します。

ページにオブジェクトを追加すると、そのオブジェクトを示すアイコンがページに表示されます。オブジェクト間の関係は、線と境界を示す四角形で示されます。[メッセージ フローの編集] ページのアイコンをクリックすると、そのオブジェクトで実行できるアクションのメニューが表示されます。メニューに含まれるオプションは、コンテキストに応じて異なります。アイコンとオプションの完全なリストについては、表 18-1 を参照してください。

表 18-1 [メッセージ フローの編集] ページのアイコンとオプション 
アイコン
説明
メニュー オプション

プロキシ サービス
メッセージ フローの開始ノード。

パイプライン ペア ノード
パイプライン ペア ノードは要求パイプラインと応答パイプラインから成ります。

応答パイプライン
上記のパイプライン ペア ノードを参照してください。

要求パイプライン
上記のパイプライン ペア ノードを参照してください。

エラー ハンドラのあるパイプライン
エラー ハンドラが定義されているパイプライン。

ルート ノード
ルート ノード アクションは、ルート ノードを通過する際のメッセージの処理を定義します。

エラー ハンドラがあるルート ノード
エラー ハンドラが定義されているルート ノード。
ステージ ノード
ステージ ノードは、アクションのコンテナです。
エラー ハンドラがあるステージ ノード
エラー ハンドラが定義されているステージ ノード。
条件付きブランチ ノード
条件付きブランチ ノードを使用すると、可能ないくつかのパスのうちの 1 つに限定して処理を進ませることができます。
オペレーション ブランチ ノード
オペレーション ブランチ ノードでは、指定された操作に基づいてどのブランチに進むかが判断されます。

ブランチ ノード
ブランチ ノードは、条件付きブランチ ノードまたはオペレーション ブランチ ノードによって定義される代替ノードの 1 つです。
エラー ハンドラ
エラー ハンドラは、メッセージ フローでエラーを再送するロジックを提供します。

[ステージ コンフィグレーションの編集] ページ

[ステージ コンフィグレーションの編集] ページを使用して、メッセージ フローのパイプライン ステージ、エラー ハンドラ ステージ、およびルート ノードにアクションを追加します。

ステージに追加できるすべての種類のアクションの操作手順については、「メッセージ フローでのアクションの追加と編集」を参照してください。

メッセージ フローへのパイプライン ペア ノードの追加

メッセージ フローには、パイプライン ペア ノード (プロキシ サービス、またはサービスの処理用の要求パイプラインと応答パイプライン) と、ステージ、パイプライン、およびプロキシ サービスに対して定義できるエラー ハンドラをゼロ個以上入れることができます。パイプラインは、1 つまたは複数のステージを持つことができ、ステージはアクションを持ちます。

始める前に

以下の手順は、「メッセージ フローの作成、編集、および表示」の説明に従って、[メッセージ フローの編集] ページで、すでにメッセージ フローを編集していることを前提としています。

メッセージ フローにパイプライン ペア ノードを追加するには

  1.  [プロキシ サービス] アイコンをクリックしてから、[パイプライン ペアの追加] をクリックします。
  2. パイプライン ペア ノードのデフォルト名を変更して説明を追加するには、以下の操作を行います。
    1.  [パイプライン ペア ノード] アイコンをクリックし、[名前とコメントの編集] をクリックします。
    2. 必要に応じて名前と説明を変更します。
    3. [保存] をクリックします。
    4. 注意 : パイプライン名やルート ノード名を変更すると、パイプライン カウンタがゼロにリセットされるので、[モニタ] モジュールの [ダッシュボード] ページに表示されるメッセージの数と他のコンポーネントのメッセージ数との相関関係がなくなる可能性があります。これは、Oracle Service Bus では、いったん削除して再作成するアクションとして名前の変更を処理しているためです。これらのメッセージ数は、サービスのモニタ間隔と同じ時間が経過した後に再び関連付ける必要があります。
  3. パイプラインにステージを追加するには、「パイプラインへのステージの追加」を参照してください。
  4. パイプラインのステージへアクションを追加するには、「メッセージ フローでのアクションの追加と編集」を参照してください。
  5. メッセージ フローの作成、編集、および表示」の説明に従って、[メッセージ フローの編集] ページで、メッセージ フローの作成を続けます。
  6. [保存] をクリックして、現在のセッションで更新をコミットします。
  7. セッションを終了してコンフィグレーションをランタイムにデプロイするには、[Change Center] の [アクティブ化] をクリックします。

メッセージ フローへの条件付きブランチの追加

ブランチ ノードを使用すると、可能ないくつかのパスのうちの 1 つに限定して処理を進めることができます。分岐は、XPath ベースの切り替えテーブルに基づいて実行されます。表の各ブランチは、条件 (たとえば、<500) を指定し、これが単一の XPath 式 (たとえば、$body/ns: PurchaseOrder/ns:totalCost) に対してメッセージ フローの降順に評価されます。最初に満たされた条件によって、進むべきブランチが決定されます。満たされる分岐条件がない場合は、デフォルトのブランチに進みます。ブランチ ノードでは、メッセージ フロー内にいくつかの子孫を持つことができます (デフォルトのブランチを含め各ブランチに 1 つずつ)。

プロキシ サービスが WSDL に基づいておらず、複数のドキュメント タイプを入力として受信する場合は、条件付きブランチ ノードを使用することを検討してください。

条件付きブランチ処理は、単純でありながらユニークな文字列値のタグが付いたブランチをまとめたルックアップ テーブルを基準に行われます。メッセージ コンテキストの変数をそのノードのルックアップ変数として指定し、実行時に、この値を使用してどのブランチに進むかが判断されます。ルックアップ変数に一致するブランチがない場合は、デフォルトのブランチに進みます。ブランチ ノードに到達する前にルックアップ変数の値を設定するように、プロキシ サービスを設定する必要があります。

始める前に

以下の手順は、「メッセージ フローの作成、編集、および表示」の説明に従って、[メッセージ フローの編集] ページで、すでにメッセージ フローを編集していることを前提としています。

メッセージ フローに条件付きブランチを追加するには

  1. [パイプライン ペア ノード] アイコンまたは [ブランチ ノード] アイコンをクリックして、[条件付きブランチ ノードの作成] をクリックします。条件付きブランチ ノードが追加され、挿入したブランチ ノードの後の既存のノードが、新しい条件付きブランチ ノードのデフォルト ブランチに移動します。
  2. ブランチ ノードのデフォルト名を変更して説明を追加するには、以下の手順に従います。
    1.  [条件付きブランチ] アイコンをクリックし、[名前とコメントの編集] をクリックします。
    2. 必要に応じて名前と説明を変更します。
    3. [保存] をクリックします。
  3. ブランチ定義を追加するには、 [条件付きブランチ] アイコンをクリックし、[ブランチの編集] をクリックします。[ブランチ ノードの編集] ページが表示されます。
  4. 以下を実行します。
    1. [選択したパス] フィールドで [編集] をクリックして、XPath 式を追加し、パスを指定します。「インライン XQuery および XPath 式の作成と編集」を参照してください。
    2. [変数] フィールドにコンテキスト変数を入力します。
    3. [演算子] フィールドから、比較演算子を選択します。
    4. [] フィールドにブランチの値を入力します。
    5. [ラベル] フィールドにブランチのラベルを入力します。
  5. (オプション) [オプション] で、以下を実行します。
    • [新しいブランチの追加] をクリックして、このブランチ ノードに新しいブランチ定義を追加します。
    • [このブランチを削除] をクリックして、ブランチ定義を削除します。
    • [ブランチを上に移動] または [ブランチを下に移動] をクリックして、ブランチ定義の位置を変更します。このオプションは、複数のブランチ定義が存在する場合にのみ表示される。
  6. [保存] をクリックして、現在のセッションで更新をコミットします。
  7. メッセージ フローの作成、編集、および表示」の説明に従って、[メッセージ フローの編集] ページで、メッセージ フローの作成を続けます。
  8. [保存] をクリックして、現在のセッションで更新をコミットします。
  9. セッションを終了してコンフィグレーションをランタイムにデプロイするには、[Change Center] の [アクティブ化] をクリックします。

メッセージ フローへのオペレーション ブランチの追加

メッセージ フローで Web Services Description Language (WSDL) ベースのプロキシ サービスを定義する場合、オペレーション固有の処理が必要になります。Oracle Service Bus では、オペレーションに基づくブランチ ノードを手動でコンフィグレーションする代わりに、オペレーションに基づいて自動的に分岐するようにコンフィグレーションされた、最小限のブランチ ノードが用意されています。つまり、オペレーション ブランチ ノードをメッセージ フローに作成すると、Oracle Service Bus Console では、WSDL に定義されたオペレーションがブランチ ノード コンフィグレーション ページに表示されるため、これらのオペレーションに基づいて分岐ロジックをすばやく構築できます。

ブランチ ノードを使用すると、可能ないくつかのパスのうちの 1 つに限定して処理を進めることができます。分岐は、XPath ベースの切り替えテーブルに基づいて実行されます。表の各ブランチは、条件 (たとえば、<500) を指定し、これが単一の XPath 式 (たとえば、$body/ns: PurchaseOrder/ns:totalCost) に対してメッセージ フローの降順に評価されます。最初に満たされた条件によって、進むべきブランチが決定されます。満たされる分岐条件がない場合は、デフォルトのブランチに進みます。ブランチ ノードでは、メッセージ フロー内にいくつかの子孫を持つことができます (デフォルトのブランチを含め各ブランチに 1 つずつ)。

始める前に

以下の手順は、「メッセージ フローの作成、編集、および表示」の説明に従って、[メッセージ フローの編集] ページで、すでにメッセージ フローを編集していることを前提としています。

メッセージ フローにオペレーション ブランチを追加するには

  1. [パイプライン ペア ノード] アイコンまたは [ブランチ ノード] アイコンをクリックして、[オペレーション ブランチ ノードの作成] をクリックします。オペレーション ブランチ ノードが追加され、挿入したブランチ ノードの後の既存のノードが、新しいオペレーション ブランチ ノードのデフォルト ブランチに移動します。
  2. ブランチ ノードのデフォルト名を変更して説明を追加するには、以下の手順に従います。
    1.  [オペレーション ブランチ] アイコンをクリックし、[名前とコメントの編集] をクリックします。
    2. 必要に応じて名前と説明を変更します。
    3. [保存] をクリックします。
  3. ブランチ定義を追加するには、 [オペレーション ブランチ] アイコンをクリックし、[ブランチの編集] をクリックします。[ブランチ ノードの編集] ページが表示されます。
  4. [オペレーション ブランチ定義] パネルで、サービス操作を選択します。
  5. (オプション) [オプション] で、
    • [新しいブランチの追加] をクリックして、このブランチ ノードに新しいブランチ定義を追加します。
    • [このブランチを削除] をクリックして、ブランチ定義を削除します。
    • [ブランチを上に移動] または [ブランチを下に移動] をクリックして、ブランチ定義の位置を変更します。このオプションは、複数のブランチ定義が存在する場合にのみ表示される。
  6. [保存] をクリックします。
  7. メッセージ フローの作成、編集、および表示」の説明に従って、[メッセージ フローの編集] ページで、メッセージ フローの作成を続けます。
  8. [保存] をクリックして、現在のセッションで更新をコミットします。
  9. セッションを終了してコンフィグレーションをランタイムにデプロイするには、[Change Center] の [アクティブ化] をクリックします。

パイプラインへのステージの追加

始める前に

以下の手順は、「メッセージ フローの作成、編集、および表示」の説明に従って、[メッセージ フローの編集] ページで、すでにメッセージ フローを編集していることを前提としています。

パイプラインにステージを追加するには

  1. 必要に応じて、 [パイプライン ペア ノード] アイコンの左側にあるプラス記号クリックしてパイプライン ペア ノードを展開します。パイプライン ペアには、 [要求パイプライン] および  [応答パイプライン] が含まれています。
  2. ステージに追加するパイプラインをクリックしてから、[ステージの追加] をクリックします。
  3. ステージのデフォルト名を変更して説明を追加するには、以下の手順に従います。
    1.  [ステージ] アイコンをクリックし、[名前とコメントの編集] をクリックします。
    2. 必要に応じて名前と説明を変更します。
    3. [保存] をクリックします。
  4. ステージにアクションを追加するには、 [ステージ」 アイコンをクリックし、[ステージの編集] をクリックします。「メッセージ フローでのアクションの追加と編集」を参照してください。
  5. ステージにエラー処理を追加するには、 [ステージ] アイコンをクリックし、[ステージへのエラー ハンドラの追加] をクリックします。「ステージへのエラー ハンドラの追加」を参照してください。[メッセージ フローの編集] ページが表示されます。
  6. メッセージ フローの作成、編集、および表示」の指示に従って、メッセージ フローの作成を続けます。
  7. [保存] をクリックして、現在のセッションで更新をコミットします。
  8. セッションを終了してコンフィグレーションをランタイムにデプロイするには、[Change Center] の [アクティブ化] をクリックします。

メッセージ フローへのルート ノードの追加

始める前に

以下の手順は、「メッセージ フローの作成、編集、および表示」の説明に従って、[メッセージ フローの編集] ページで、すでにメッセージ フローを編集していることを前提としています。

メッセージ フローにルート ノードを追加するには

  1. パイプライン ペアの [パイプライン ペア ノード] アイコンをクリックして、[ルートの追加] をクリックします。
  2. ルート ノードのデフォルト名の変更と説明の追加を行うには、 [ルート ノード] アイコンをクリックして、[名前とコメントの編集] をクリックします。必要に応じて名前と説明を変更し、[保存] をクリックします。
  3. 注意 : パイプライン名やルート ノード名を変更すると、パイプライン カウンタがゼロにリセットされるので、[モニタ] モジュールの [ダッシュボード] ページに表示されるメッセージの数と他のコンポーネントのメッセージ数との相関関係がなくなる可能性があります。これは、Oracle Service Bus では、いったん削除して再作成するアクションとして名前の変更を処理しているためです。これらのメッセージ数は、サービスのモニタ間隔と同じ時間が経過した後に再び関連付ける必要があります。
  4. ルート ノードにアクションを追加するには、 [ルート ノード] アイコンをクリックし、[ルートの編集] をクリックします。[メッセージ フローの編集] ページが表示されます。ルート ノードに追加できるアクションの詳細については、以下のセクションを参照してください。
  5. メッセージ フローの作成、編集、および表示」の説明に従って、[メッセージ フローの編集] ページで、メッセージ フローの作成を続けます。
  6. [保存] をクリックして、現在のセッションで更新をコミットします。
  7. セッションを終了してコンフィグレーションをランタイムにデプロイするには、[Change Center] の [アクティブ化] をクリックします。

ステージおよびルート ノードの切り取り、コピー、貼り付け

ステージおよびルート ノードの切り取り、コピー、貼り付けが行えます。


ページの先頭       前  次