このトピックには、以下のセクションが含まれています。
応答を入力メッセージの発信元に送信するには、MQReply ノードを使用します。 MQReply は、入力メッセージ・ヘッダーの「ReplyToQ」フィールドで識別される WebSphere MQ キューに出力メッセージを書き込む、MQOutput ノードの特殊な形式です。適切な場合には、キューを WebSphere MQ クラスター・キューまたは共有キューとして定義することができます。
MQReply ノードは、MQMD の「Report」フィールド内に設定されているオプションの制御を受けます。 デフォルトでは (オプションが設定されていない場合)、MQReply ノードは、応答メッセージ内に新しい MsgID と CorrelID を生成します。 受信アプリケーションではこれらのフィールドに他の値が必要である場合は、メッセージ・フロー入力キューにメッセージを書き込むアプリケーションが確実に必須のレポート・オプションを設定するようにするか、またはメッセージ・フロー中のメッセージ処理時に MQMD 内で確実に適切なオプションを設定するようにしてください。 例えば、メッセージに「Report」オプションを設定するには、Compute ノードを使用してください。
「Report」フィールドの詳細については、「WebSphere MQ」を参照してください。
ワークベンチでは、MQReply ノードは次のアイコンで表されます。
このノードが使用される方法に関しては、次のサンプルを参照してください。
顧客から注文を受け取るときにこのノードを使用することが適切であるかもしれません。 注文メッセージが処理されると、注文の受け取りを確認し、送達可能日を通知する応答が顧客に送信されます。
MQReply ノードのインスタンスをメッセージ・フローに入れると、MQReply ノードを構成することができます。 エディター・ビューでノードを右クリックし、「プロパティー」をクリックします。 ノードの基本プロパティーが表示されます。
値を入力する必要のある (デフォルト値が定義されていない) すべての必須プロパティーには、プロパティー・ダイアログにアスタリスクが表示されます。
以下のように、MQReply ノードを構成します。
このプロパティーのマップ先のオプションの詳細については、「WebSphere MQアプリケーション・プログラミング・リファレンス」を参照してください。
詳細については、メッセージの妥当性検査およびMRM ドメインのメッセージの妥当性検査プロパティーを参照してください。
「キャンセル」をクリックすると、ダイアログを閉じてプロパティーに対して行った変更をすべて破棄します。
応答メッセージは、(MQPUT を使用して) 入力メッセージ MQMD に「ReplyTo」キューという名前で書き込まれます。 この宛先は変更できません。
メッセージをさらに処理したい場合、エラーを処理したい場合、あるいはメッセージを追加の宛先に送信したい場合は、このノードの out ターミナルまたは failure ターミナルをこのメッセージ・フローの別のノードに接続します。
これらの出力ターミナルの 1 つをメッセージ・フロー内の別のノードに接続すると、メッセージに関連した LocalEnvironment は拡張され、メッセージが送られた宛先ごとに以下の情報が追加されます。
これらの値は、LocalEnvironment ツリー構造内の WrittenDestination に書き込まれます。
これらの out ターミナルのいずれかを接続しない場合には、LocalEnvironment ツリーは変更されません。
メッセージ・フローで集約を使用する場合には、これらの out ターミナルを使用する必要があります。
MQReply ノードを定義するときに、「トランザクション・モード」プロパティーに選択する次のようなオプションで、メッセージを同期点下に書き込むかどうかを定義します。
MQReply ノードのもう 1 つのプロパティー「持続モード」は、出力キューに出力メッセージを書き込むときに持続のマークを付けるかどうかを定義します。
MQReply ノード・ターミナルについては、次の表に説明されています。
ターミナル | 説明 |
---|---|
In | ノードが処理するメッセージを受け入れる入力ターミナル。 |
Failure | メッセージの出力キューへの書き込みに失敗した場合にメッセージがルーティングされる出力ターミナル。 |
Out | 出力キューに正常に書き込まれた場合に、またはこのメッセージ・フロー内でさらに処理が必要な場合にメッセージがルーティングされる出力ターミナル。 |
以下の表でノードのプロパティーを説明します。M の見出しの列は、プロパティーが必須 かどうかを示します (デフォルトが定義されていない場合に値を入力することが必要なら、プロパティー・ダイアログにアスタリスクのマークが付きます)。 C の見出しの列は、プロパティーが構成可能 かどうかを示します (メッセージ・フローを bar ファイルに追加してデプロイするとき、値を変更できます)。
MQReply ノードの「拡張」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
セグメント化可能 | はい | いいえ | 選択されていない | WebSphere MQ が必要に応じて、メッセージをキュー・マネージャーでいくつかのセグメントに分けます。 チェック・ボックスを選択すると、このアクションが実行されます。 |
持続モード | はい | いいえ | 自動 | メッセージを持続的に書き込むかどうか。 有効な値は、「自動」、「はい」、「いいえ」および「キューの定義どおり」です。 |
トランザクション・モード | はい | いいえ | 自動 | メッセージをトランザクションとして書き込むかどうか。 有効な値は、「自動」、「はい」、および「いいえ」です。 |
MQReply ノードの妥当性検査プロパティーについては、次の表に説明されています。
これらのプロパティーの詳細については、MRM ドメインのメッセージの妥当性検査プロパティーを参照してください。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
妥当性検査 | はい | はい | 継承 | 妥当性検査が行われるかどうか。有効な値は、「なし」、「内容と値」、「内容」、 および「継承」です。 |
失敗処置 | はい | いいえ | 例外 | 妥当性検査に障害が発生した場合の動作。 「妥当性検査」を「内容」または「内容と値」に設定した場合にのみ、このプロパティーを設定できます。 有効な値は、「ユーザー・トレース」、「ローカル・エラー・ログ」、「例外」、および「例外リスト」です。 |
すべての値制約を含める | はい | いいえ | 選択されている | このプロパティーは編集できません。 チェック・ボックスが選択されていることにより示されるデフォルトのアクションは、基本値制約検査が「内容と値」妥当性検査に含まれるということです。 |
修正 | はい | いいえ | 「なし」 | このプロパティーは編集できません。 |
MQReply ノードの「説明」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
簡略説明 | いいえ | いいえ | ノードの簡単な説明 | |
詳細説明 | いいえ | いいえ | メッセージ・フロー内のノードの目的を説明するテキスト |
また MQReply ノードには、ワークベンチ・インターフェースからアクセスまたは変更ができない次のプロパティーもあります。 しかし、これらの値は、メッセージ・フローでメッセージを処理する際にブローカーが使用します。
プロパティー | 説明 |
---|---|
キュー・マネージャー名 | 「キュー名」に指定された出力キューを定義する WebSphere MQ キュー・マネージャーの名前。 この名前は、入力メッセージの MQMD の「ReplyTo」フィールドから取り出されます。 |
キュー名 | 出力メッセージが書き込まれる WebSphere MQ キューの名前。 この名前は、入力メッセージの MQMD の「ReplyTo」フィールドから取り出されます。 |
宛先 | このプロパティーの値は常に「応答」です。 |