Timeout Processing サンプルには、以下のように個別に実行される 2 つの部分があります。
サンプルの実行時に問題を検出した場合は、 WebSphere Message Broker 資料の『サンプル実行時の問題の解決』を参照してください。
AutomaticTimeout メッセージ・フローは、デプロイ後、自動的に実行されます。 メッセージは、ブローカーの実行中、10 秒ごとに TIMEOUT_SAMPLE_OUT_1 キューに出力されます。
テストが完了したら、SetUnlimitedTimeout.mbtest ファイルを使ってこの手順を繰り返してください。 このアクションにより、制限なしの (終了しない) タイムアウト要求の入ったメッセージが TIMEOUT_SAMPLE_IN_2 キューに書き込まれ、元のメッセージのコピーが 10秒ごとに TIMEOUT_SAMPLE_OUT_2 キューに出力されます。 出力メッセージには、元の入力メッセージの断片 (最初の Invoice レコード) が含まれます。
制限なしのタイムアウト要求は、終了するよう命令されるまで実行されます。タイムアウト要求は、対応する取り消し要求で停止することができます。
さらに、10 回のタイムアウト要求も CancelTenTimeout.mbtest ファイルを使用して、同じ方法で停止することができます。
制限付きのタイムアウトと制限なしのタイムアウトは、両方のメッセージを一緒にフローに送り込むことによって、一緒に 実行できます。 制御されたノードは、それぞれが実行するたびにそれらを処理し、出力メッセージは TIMEOUT_SAMPLE_OUT_2 キューで 混合されます。 いずれかのタイムアウト要求の 2 つのインスタンスを一緒に実行することはできません。2 番目のインスタンスは、既存の要求を上書きしないため、TimeoutControl ノードでエラーを生成することになります。このアクションは、Timeout ノード一般の制限ではなく、このサンプルの制限です。サンプルの .mbtest ファイルのタイムアウト要求の ID がハードコーディングされています。
TIMEOUT_SAMPLE_OUT_1 キュー上のメッセージを表示するには、以下の手順に従ってください。
キュー上のメッセージとして、以下のようなメッセージが自動的に生成されます。
<TimeoutRequest> <Action>SET</Action> <Identifier>SampleAuto</Identifier> <StartDate>2007-08-31</StartDate> <StartTime>13:04:12.295</StartTime> <Count>3</Count> <Interval>10</Interval> <IgnoreMissed>true</IgnoreMissed> <AllowOverwrite>true</AllowOverwrite> </TimeoutRequest>
TIMEOUT_SAMPLE_OUT_2 キュー上のメッセージを表示するには、以下の手順に従ってください。
TIMEOUT_SAMPLE_OUT_2 キュー上のメッセージには、入力メッセージ全体、またはそのごく一部が含まれます。