ローカル環境ツリーには独自の相関名 LocalEnvironment があり、
このツリーの内容を参照または設定するすべての ESQL ステートメントではこの名前を使用する必要があります。
ローカル環境ツリーはブローカーが使用し、ユーザーはこの情報を参照して変更できます。 またこのツリーを拡張して、ユーザー自身が作成する情報を含めることができます。
このツリーのサブツリーを作成し、スクラッチパッドまたは作業域として使用できます。
メッセージ・フローは、LocalEnvironment ルートの下に、Destination および WrittenDestination という 2 つのサブツリーに情報をセットアップします。 これらのサブツリーの内容を参照して、Destination ツリーに書き込んでメッセージ・フローがメッセージを処理する方法に影響を与えることができます。 しかし Destination ツリーに書き込む場合には、定義済みの構造に従ってツリーが有効であることを確認してください。
WrittenDestination サブツリーには、メッセージの書き込み先であるアドレスが含まれています。 その名前は固定しており、要求、出力、または Reply ノードの Out ターミナルを介してメッセージが伝搬される際に、メッセージ・フローによって作成されます。 サブツリーには、トランスポート特定の情報が組み込まれています (例えば、出力メッセージが
WebSphere® MQ キューに書き込まれた場合、それにはキュー・マネージャーおよびキュー名が組み込まれます)。 以下のいずれかの方式を使用して、ノードによって送信された後のメッセージに関する詳細情報を取得できます。
- Compute ノードを Out ターミナルに接続します。
- ユーザー出口の活用で説明されているように、出力メッセージのコールバック・イベントを処理するようにユーザー出口を構成します。
WrittenDestination 情報をサポートする各ノードのトピックには、ノードに含まれるデータに関する詳細情報が含まれています。
ローカル環境ツリーを Compute ノードが伝搬する出力メッセージに組み込む場合には、
Compute ノードの「計算モード」プロパティーをローカル環境を含む値 (例えば、「すべて」) に設定する必要があります。 そのようにしない場合には、ローカル環境ツリーは出力メッセージにコピーされません。
DestinationData または Defaults に挿入する情報は、対応するノード・プロパティーの特性に依存します。
- ノード・プロパティーがチェック・ボックスによって表される場合には (例えば、「新規メッセージ ID」)、Defaults または DestinationData エレメントを「はい」(チェック・ボックスの選択に相当)、または「いいえ」(チェック・ボックスのクリアに相当) に設定します。
- ノード・プロパティーがドロップダウン・リストによって表される場合には (例えば、「トランザクション・モード」)、Defaults または DestinationData エレメントを適切な文字ストリング (例えば、「自動」) に設定します。
- ノード・プロパティーがテキスト入力フィールドによって表される場合には (例えば、「キュー・マネージャー名」)、Defaults または DestinationData エレメントをこのフィールドに入力する文字ストリングに設定します。
必要な場合は、宛先情報の場所を指示するように送信ノードを構成してください。 例えば、出力ノード MQOutput の場合は、「宛先モード」を設定します。
- 「宛先モード」 を 「キュー名」 に設定する場合には、出力ノード・プロパティー「キュー名」および「キュー・マネージャー名」で識別されるキューに出力メッセージは送信されます。 ノードは宛先を参照しません。
- 「宛先モード」を 「宛先リスト」 に設定する場合には、ノードは Destination サブツリーから宛先情報を抽出します。 この値を使用する場合、Destination および単一の出力ノードを適切に構成すると、単一のメッセージを複数の宛先に送信できます。 (上述のように) Destination で値が有効でない場合には、ノードはノード・プロパティーのみをチェックします。
- 「宛先モード」を「応答先キュー」に設定する場合には、メッセージの MQMD で識別される応答先キューにそのメッセージは送信されます (「ReplyToQ」フィールド)。 ノードは宛先を参照しません。
ローカル環境に対する典型的な更新を実行する ESQL プロシージャーについて詳しくは、ローカル環境ツリーの Destination へのデータの取り込みを参照してください。
ローカル環境を変更する方法については、これらのプロシージャーの ESQL ステートメントを確認してください。 これらの手順をそのまま使用することも、独自の要件に合わせて変更することもできます。
独自の目的のためにこのツリーの内容を拡張する方法について詳しくは、ローカル環境でのスクラッチパッド領域の使用を参照してください。
ローカル環境を使用してメッセージ・フローの動作を変更する方法の別の例は、以下のサンプル・プログラムの XML_PassengerQuery メッセージ・フローを参照してください。
このメッセージ・フローの
Compute ノードは、
対応する
Label ノードにメッセージを伝搬する
RouteToLabel ノードが後ほどラベルとして使用する、
宛先のリストを Destination の RouterList サブツリーに書き込みます。
サンプルに関する情報は、WebSphere Message
Broker Toolkit に統合されているインフォメーション・センター、またはオンライン・インフォメーション・センターを使用する場合にのみ表示できます。 サンプルは、WebSphere Message
Broker Toolkit に統合されているインフォメーション・センターを使用する場合にのみ実行できます。