TimeoutNotification ノード

このトピックには、以下のセクションが含まれています。

目的

TimeoutNotification ノードは、以下の 2 つの方法のいずれかで使用可能な入力ノードです。

  • 1 つ以上の TimeoutControl ノードと組み合せる。

    TimeoutNotification ノードは、それが組み合せられた TimeoutControl ノードによって設定された タイムアウト要求メッセージを処理して、メッセージ (または選択されたメッセージのフラグメント) の コピーをメッセージ・フロー内の次のノードに伝搬します。

  • 単独で。

    生成されるメッセージは、このノードの構成に指定された時間間隔でメッセージ・フロー内の次のノードに伝搬されます。

ワークベンチでは、TimeoutNotification ノードは次のアイコンで表されます。

Timeout Notification ノード・アイコン

メッセージ・フロー内でのこのノードの使用

イベントが特定の時期にまたは一定の間隔で生じるようにする必要のあるアプリケーションでは、TimeoutControl ノードと TimeoutNotification ノードをメッセージ・フロー内で一緒に使用します。

例えば、バッチ・ジョブを毎日深夜に実行したい場合や、通貨の為替レートに関する情報を 1 時間ごとに銀行に送りたい場合などです。

複数の TimeoutControl ノードを 1 つの TimeoutNotification ノードと対にすることができます。 それらの TimeoutControl ノードによって処理されるタイムアウト要求は、すべて同じ TimeoutNotification ノードによって処理されます。 これは、同じ固有 ID が TimeoutNotification ノード および各 TimeoutControl ノードに対して使用されている場合に生じます。

ブローカーまたはノードを含むメッセージ・フローが開始している結果として TimeoutNotification ノードが開始されるとき、 それはその内部タイムアウト・ストアをスキャンして、非持続タイムアウト要求をすべてパージすることに注意してください。 経過済みであり、IgnoreMissed プロパティーが「False」に設定された持続タイムアウト要求に対しては、通知が発行されます。

TimeoutNotification ノードを使用して WebSphere MQ メッセージを生成する場合、 MQOutput などの出力ノードには有効な MQMD を指定する必要があります。 TimeoutNotification ノードが「自動」モード (スタンドアロン) で実行している場合、これは必須です。TimeoutNotification ノードが「制御」モードで実行している場合 (つまり、 1 つ以上の TimeoutControl ノードと対になっている場合)、 これは保管されたメッセージにまだ MQMD がない場合にのみ必須になります。

以下の ESQL は、これを行う方法を示しています。
CREATE NEXTSIBLING OF OutputRoot.Properties DOMAIN 'MQMD';
SET OutputRoot.MQMD.StrucId = MQMD_STRUC_ID;
SET OutputRoot.MQMD.Version = MQMD_CURRENT_VERSION;
SET OutputRoot.MQMD.Format = 'XML';
ローカル環境には WebSphere MQ コンテキストが存在しないため、 MQOutput ノードのプロパティー「メッセージ・コンテキスト」はデフォルト値となります。

タイムアウト処理ノードの使用方法について詳しくは、Timeout Processing サンプル を参照してください。

TimeoutNotification ノードの構成

メッセージ・フロー内の TimeoutNotification ノードを、インスタンスごとに構成できます。

ノードを構成するには、エディター・ビューでノードを右クリックし、 「プロパティー」をクリックします。 ノードの基本プロパティーが表示されます。

固有 ID」は、唯一の必須プロパティーです。 これにはデフォルト値がありません。

以下の方法で、TimeoutNotification ノードを構成します。

  • 固有 ID」に、ブローカー内で固有であり、 このノードと組み合された TimeoutControl ノード (存在する場合) と同じ値を指定します。 この ID の最大長は 12 文字です。
  • トランザクション・モード」の値を指定します。 このプロパティーは、伝搬されたタイムアウト・メッセージのトランザクション制御に影響を与えるもので、 以下のいずれかの値に設定できます。
    はい
    トランザクションは常に開始されます。
    いいえ
    トランザクションは決して開始されません。
    自動
    この値に意味があるのは、「動作モード」の 値が「制御」である場合だけです。 トランザクションが開始されるかどうかは、保管されたタイムアウト要求の持続性に依存します。 これは、対になっている TimeoutControl ノード内の「要求の持続性」の 値によって制御されます。
  • 動作モード」の値を指定します。 このプロパティーは、このノードに組み合されている TimeoutControl ノードがあるかどうかを示します。 以下のいずれかの値に設定します。
    自動
    ノードは TimeoutControl ノードと対になっていません。 これは、「タイムアウト値」プロパティーによって間隔が制御されるタイムアウト要求を生成します。
    制御
    ノードは、対になっている TimeoutControl ノードによって保管されたすべてのタイムアウト要求を処理します。
  • 動作モード」が「自動」の場合、 「タイムアウト間隔」の値を指定します。 この値は、メッセージ伝搬の間隔を (秒数で) 指定します。
  • MRM パーサーの場合、メッセージ・セットから生成されたディクショナリーに対してメッセージ本体の妥当性検査を行いたいのであれば、プロパティー・ダイアログ・ナビゲーターの「妥当性検査」を選択します。(メッセージがターミナルの failure ノードに伝搬される場合には、妥当性検査は行われません。)

    詳細については、メッセージの妥当性検査およびMRM ドメインのメッセージの妥当性検査プロパティーを参照してください。

  • プロパティー・ダイアログ・ナビゲーターで「一般メッセージ・オプション」を選択します。 「解析のタイミング」は、デフォルトで、「要求時」に設定されます。 この設定では、部分構文解析によって構文解析されるまで、妥当性検査が遅延します。 設定を「即時」に変更すると、部分構文解析はオーバーライドされて、メッセージ内のすべてのものが構文解析および妥当性検査されます。ただし、「構成」が「選択」または「メッセージ」に指定された複合タイプで、この時点で解決できないものは除きます。 設定を「完全」に変更すると、部分構文解析はオーバーライドされて、メッセージ内のすべてのものが構文解析および妥当性検査されます。「構成」が「選択」または「メッセージ」に指定された複合タイプで、この時点で解決できないものでは妥当性検査障害が生じます。
  • 簡略説明または詳細説明 (あるいはその両方) を入力するには、プロパティー・ダイアログ・ナビゲーターの「説明」を選択します。

構成が完了したら、「適用」をクリックします。 これにより、プロパティー・ダイアログを閉じずに TimeoutNotification ノードが変更されます。 「OK」をクリックすると、変更を適用してプロパティー・ダイアログを閉じます。「キャンセル」をクリックすると、ダイアログを閉じてプロパティーに対して行った変更をすべて破棄します。

ターミナルおよびプロパティー

TimeoutNotification ノードのターミナルについては、次の表に説明されています。

ターミナル 説明
Failure このノード内の処理で障害が検出された場合に、メッセージが伝搬される出力ターミナル。 ノードをこのターミナルに接続して、これらの障害を処理することができます。 このターミナルが他のノードに接続されていない場合、メッセージは伝搬されません。 また、データのロギングまたは安全な保管は生じません。
Out タイムアウトの満了後に、メッセージが伝搬される出力ターミナル。

TimeoutNotification ノードが「自動」モードで実行している (つまり、 このノードと対になっている TimeoutControl ノードがない) 場合、 伝搬されるメッセージには「プロパティー」フォルダーだけが含まれて、 LocalEnvironment にはタイムアウト情報のデータが取り込まれます。

TimeoutNotification ノードが「制御」モードで実行している (つまり、 このノードの保管されたタイムアウト要求と対になっている TimeoutControl ノードがタイムアウト要求を保管している) 場合、伝搬されるメッセージには TimeoutControl ノードによって保管されたものが含まれます。 これは要求メッセージの全体、またはその断片であることがあります。

TimeoutNotification ノードが WebSphere MQ メッセージを (MQOutput ノードを使用するなどして) 生成するメッセージ・フローへの入力ノードとして使用される場合、 そのメッセージ・フローは必要な MQ ヘッダーおよびデータ (MQMD など) を作成する必要があります。

Catch 例外がダウンストリームでスローされた場合にメッセージが伝搬される出力ターミナル。 このターミナルが他のノードに接続されていない場合、以下のイベントが生じます。
  1. TimeoutNotification ノードはエラーをローカル・エラー・ログに書き込みます。
  2. TimeoutNotification ノードは、例外を生じさせた問題が解決するまで要求の処理を繰り返し試行します。

以下の表でノードのプロパティーを説明します。M の見出しの列は、プロパティーが必須 かどうかを示します (デフォルトが定義されていない場合に値を入力することが必要なら、プロパティー・ダイアログにアスタリスクのマークが付きます)。C の見出しの列は、プロパティーが構成可能 かどうかを示します (メッセージ・フローを bar ファイルに追加してデプロイするとき、値を変更できます)。

TimeoutNotification ノードの基本プロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
固有 ID はい はい なし ブローカー内で固有であり、このノードと組み合された TimeoutControl ノード (存在する場合) と同じ値。 この ID の最大長は 12 文字です。
トランザクション・モード いいえ いいえ 「はい」 ノードのトランザクション・モードです。この値は、 「はい」「いいえ」 または 「自動」とすることができます。 トランザクション・モードが「自動」の場合、 トランザクションは、対になっている TimeoutControl ノードの「要求の持続性」プロパティーによって制御される保管されたタイムアウト要求の持続性に依存します。
動作モード いいえ いいえ 「自動」 このプロパティーは、このノードが組み合されている TimeoutControl ノードと対になっているかどうかを示します。 この値は、「自動」または「制御」とすることができます。
タイムアウト間隔 いいえ いいえ 1 タイムアウト要求の間隔 (秒数)。 これが関係するのは、「動作モード」が 「自動」に設定されている場合だけです。

TimeoutNotification ノードの妥当性検査プロパティーについては、次の表に説明されています。

これらのプロパティーの詳細については、MRM ドメインのメッセージの妥当性検査プロパティーを参照してください。
プロパティー M C デフォルト 説明
妥当性検査 はい はい なし 妥当性検査が行われるかどうか。有効な値は、「なし」「内容」、および「内容と値」です。
失敗処置 はい いいえ 例外 妥当性検査に障害が発生した場合の動作。 「妥当性検査」を「内容」または「内容と値」に設定した場合にのみ、このプロパティーを設定できます。有効な値は、「ユーザー・トレース」「ローカル・エラー・ログ」「例外」、および「例外リスト」です。
すべての値制約を含める はい いいえ 選択されている このプロパティーは編集できません。 チェック・ボックスが選択されていることにより示されるデフォルトのアクションは、基本値制約検査が「内容と値」妥当性検査に含まれるということです。
修正 はい いいえ なし このプロパティーは編集できません。

TimeoutNotification ノードの汎用メッセージ・オプションのプロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
構文解析のタイミング はい いいえ 要求時 このプロパティーは、入力メッセージを構文解析する時を制御します。 有効な値は、「要求時」「即時」、および「完全」です。

このプロパティーの詳細については、要求時の構文解析を参照してください。

MQRFH2C コンパクト・パーサーを MQRFH2 ドメインに使用 いいえ いいえ 「False」 このプロパティーは、MQRFH2 パーサーの代わりに、MQRFH2C コンパクト・パーサーを MQRFH2 ヘッダーに使用するかどうかを制御します。

TimeoutNotification ノードの XMLNSC パーサー・オプションのプロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
XMLNSC コンパクト・パーサーを XMLNS ドメインに使用 はい 選択されていない 「いいえ」 変更の始まりこのプロパティーは、XMLNS ドメイン内のメッセージに XMLNSC コンパクト・パーサーを使用するかどうかを制御します。このプロパティーを設定すると、入力 RFH2 ヘッダーまたはデフォルト・プロパティー・ドメインが XMLNS の場合、出力ターミナルに接続されているノードの XMLNSC の下にメッセージ・データが表示されることに注意してください。変更の終わり
混合内容保存モード はい いいえ なし このプロパティーは、XMLNSC パーサーが入力メッセージ内に混合テキストを検出したとき、メッセージ・ツリー内にエレメントを作成するかどうかを制御します。 有効な値は、「なし」および「すべて」です。「すべて」を選択すると、混合テキストに対してエレメントが作成されます。 「なし」を選択すると、混合テキストは無視されて、エレメントは作成されません。
コメント保存モード はい いいえ なし このプロパティーは、XMLNSC パーサーが入力メッセージ内にコメントを検出したとき、メッセージ・ツリー内にエレメントを作成するかどうかを制御します。 有効な値は、「なし」および「すべて」です。「すべて」を選択すると、コメントに対してエレメントが作成されます。 「なし」を選択すると、コメントは無視されて、エレメントは作成されません。
処理命令保存モード はい いいえ なし このプロパティーは、XMLNSC パーサーが入力メッセージ内に処理命令を検出したとき、これらのメッセージ・ツリー内にエレメントを作成するかどうかを制御します。 有効な値は、「なし」および「すべて」です。「すべて」を選択すると、処理命令に対してエレメントが作成されます。 「なし」を選択すると、処理命令は無視されて、エレメントは作成されません。

TimeoutNotification ノードの説明プロパティーについては、次の表に説明されています。

プロパティー M C デフォルト 説明
簡略説明 いいえ いいえ   ノードの簡単な説明
詳細説明 いいえ いいえ   メッセージ・フロー内のノードの目的を説明するテキスト
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
ac20802_