メッセージがその内容に応じてメッセージ・フローでとる経路を動的に決定するには、 RouteToLabel ノードを 1 つ以上の Label ノードと組み合わせて使用します。
このトピックには、以下のセクションが含まれています。
RouteToLabel ノードは、 メッセージのローカル環境に問い合わせて、メッセージがルーティングされる必要のある Label ノードの ID を判別します。
メッセージ・フロー内で、RouteToLabel ノードの前には、 メッセージの次の処理シーケンスを知らせる 1 つ以上の Label ノードの ID を メッセージのローカル環境に取り込む Compute ノードが存在する必要があります。 宛先は、特定の場所のローカル環境ツリー内のラベル名のリストとしてセットアップされます。 Airline Reservations サンプルから取られたこの ESQL の抜粋は、 Compute ノードにローカル環境の内容をセットアップする方法の例を示しています。
IF InputRoot.XMLNSC.PassengerQuery.ReservationNumber<>'' THEN
SET OutputLocalEnvironment.Destination.RouterList.DestinationData[1].labelName = 'SinglePassenger';
ELSE
SET OutputLocalEnvironment.Destination.RouterList.DestinationData[1].labelName = 'AllReservations';
END IF;
ラベル名は、任意のストリング値とすることができ、明示的に Compute ノード内に指定したり、 メッセージ内の任意のフィールドから入手またはキャストしたり、データベースから取り出したりすることができます。 ローカル環境内のラベル名は、対応する Label ノードの 「ラベル名」プロパティーと一致していなければなりません。
Compute ノードを構成する場合、「計算モード」プロパティーで、リストから LocalEnvironment を含む値を選択することも必要です。
RouteToLabel ノードが論理的にメッセージ・フロー内で 1 つ以上の Label ノードの前に置かれるようにメッセージ・フローを設計しますが、 物理的に RouteToLabel ノードを Label ノードに接続しないでください。 必要な場合には、ローカル環境の内容に応じて、ブローカーが接続を作成します。
RouteToLabel ノードはパレットの「ルーティング」ドロワーに含まれていて、WebSphere® Message Broker Toolkit 内では次のアイコンによって表されます。
サンプルに関する情報は、WebSphere Message Broker Toolkit に統合されているインフォメーション・センター、またはオンライン・インフォメーション・センターを使用する場合にのみ表示できます。 サンプルは、WebSphere Message Broker Toolkit に統合されているインフォメーション・センターを使用する場合にのみ実行できます。
RouteToLabel ノードのインスタンスをメッセージ・フローに入れると、それを構成することができます。メッセージ・フロー・ノードの構成を参照してください。 ノードのプロパティーが、「プロパティー」ビューに表示されます。 値を入力する必要のあるすべての必須プロパティーには、アスタリスクが表示されます。
RouteToLabel ノードのターミナルについては、次の表に説明されています。
ターミナル | 説明 |
---|---|
In | ノードが処理するメッセージを受け入れる入力ターミナル。 |
Failure | 処理で障害が検出された場合に、メッセージがルーティングされる出力ターミナル。 |
以下の表は、ノード・プロパティーについて説明しています。 M の見出しの列は、プロパティーが必須 かどうかを示します (デフォルトが定義されていない場合に値を入力することが必要なら、アスタリスクのマークが付きます)。 C の見出しの列は、プロパティーが構成可能 (メッセージ・フローを BAR ファイルに追加してデプロイするとき、値を変更できる) かどうかを示します。
RouteToLabel ノードの「説明」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
ノード名 | いいえ | いいえ | ノード・タイプ: RouteToLabel | ノードの名前。 |
簡略説明 | いいえ | いいえ | ノードの簡単な説明 | |
詳細説明 | いいえ | いいえ | メッセージ・フロー内のノードの目的を説明するテキスト |
RouteToLabel ノードの「基本」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
モード | はい | いいえ | 末尾にルーティング | このプロパティーは、RouteToLabel ノードが現在のメッセージと関連付けられているローカル環境内の項目を処理する方法を制御します。 有効な値は以下のとおりです。
|
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
イベント | いいえ | いいえ | なし | ノードに対して定義したイベントが、このタブに表示されます。 デフォルトでは、メッセージ・フローのどのノードに対してもモニター・イベントは定義されません。 ノードのモニター・イベントを作成、変更、または削除するには、「追加」、「編集」、および「削除」を使用します。詳しくは、モニター・プロパティーを使用したモニター・イベント・ソースの構成を参照してください。 「使用可能」チェック・ボックスを選択またはクリアすることによって、ここに表示されているイベントを使用可能および使用不可に設定できます。 |