応答を入力メッセージの発信元に送信するには、MQReply ノードを使用します。
このトピックには、以下のセクションが含まれています。
MQReply ノードは、入力メッセージ・ヘッダーの「ReplyToQ」フィールドで識別される WebSphere® MQ キューに出力メッセージを書き込む特殊な形式の MQOutput ノードです。 適切な場合には、キューを WebSphere MQ クラスター・キューまたは共有キューとして定義することができます。
MQReply ノードは、MQMD の「Report」フィールド内に設定されているオプションを使用します。 デフォルトでは (つまり、オプションが設定されていなければ)、MQReply ノードは、応答メッセージで新しい MsgId フィールドを生成し、そのメッセージ ID を入力メッセージから応答メッセージの CorrelId フィールドにコピーします。 受信側のアプリケーションで、これらのフィールドに他の値が必要な場合は、メッセージ・フロー入力キューにメッセージを書き込むアプリケーションが必要なレポート・オプションを設定するようにするか、メッセージ・フローでメッセージを処理するときに MQMD で適切なオプションを設定するようにしてください。 例えば、Compute ノードを使用して、メッセージのレポート・オプションを設定します。
「レポート」フィールドに関する詳細は、WebSphere MQ バージョン 7 インフォメーション・センター・オンラインの「アプリケーション・プログラミング・リファレンス」セクションに記載されています。
MQReply ノードは、パレットの 「WebSphere MQ」ドロワーに含まれていて、WebSphere Message Broker Toolkit 内では、次のアイコンによって表されます。
サンプルに関する情報は、WebSphere Message Broker Toolkit に統合されているインフォメーション・センター、またはオンライン・インフォメーション・センターを使用する場合にのみ表示できます。 サンプルは、WebSphere Message Broker Toolkit に統合されているインフォメーション・センターを使用する場合にのみ実行できます。
顧客から注文を受け取るときにこのノードを使用することができます。 注文メッセージが処理されると、注文の受け取りを確認し、送達可能日を通知する応答が顧客に送信されます。
WrittenDestination = (
MQ = (
DestinationData = (
queueName = 'OUT'
queueManagerName = 'MYQUEUEMANAGER'
replyIdentifier = X'4d...2e'
msgId = X'3c...2c'
correlId = X'2a...00'
GroupId = X'3a...00'
)
)
)
MQReply ノードのインスタンスをメッセージ・フローに入れると、それを構成することができます。メッセージ・フロー・ノードの構成を参照してください。 ノードのプロパティーが、「プロパティー」ビューに表示されます。
以下のように、MQReply ノードを構成します。
このプロパティーをマップするオプションの詳細は、WebSphere MQ バージョン 7 インフォメーション・センター・オンラインの「アプリケーション・プログラミング・リファレンス」セクションに記載されています。
詳細については、メッセージの妥当性検査を参照してください。
応答メッセージは、入力メッセージ MQMD に「ReplyTo」キューという名前で指定されたキューに、書き込まれます (MQPUT を使用して)。 この宛先は変更できません。
メッセージをさらに処理したり、エラーを処理したり、あるいはメッセージを追加の宛先に送信するために、このノードの Out ターミナルまたは Failure ターミナルをメッセージ・フローの別のノードに接続します。
メッセージ・フローで集約を使用する場合には、これらの出力ターミナルを接続する必要があります。
MQReply ノードのターミナルについては、次の表に説明されています。
ターミナル | 説明 |
---|---|
In | ノードが処理するメッセージを受け入れる入力ターミナル。 |
Failure | メッセージの出力キューへの書き込みに失敗した場合にメッセージがルーティングされる出力ターミナル。 |
Out | 出力キューに正常に書き込まれた場合に、またはこのメッセージ・フロー内でさらに処理が必要な場合にメッセージがルーティングされる出力ターミナル。 |
以下の表は、ノード・プロパティーについて説明しています。 M の見出しの列は、プロパティーが必須 かどうかを示します。C の見出しの列は、プロパティーが構成可能 (メッセージ・フローを BAR ファイルに追加してデプロイするとき、値を変更できる) かどうかを示します。
MQReply ノードの「説明」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
ノード名 | いいえ | いいえ | ノード・タイプ。 | ノードの名前。 |
簡略説明 | いいえ | いいえ | ノードの簡単な説明 | |
詳細説明 | いいえ | いいえ | メッセージ・フロー内のノードの目的を説明するテキスト |
MQReply ノードの「拡張」プロパティーについては、次の表に説明されています。
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
セグメント化可能 | はい | いいえ | 選択されていない | このチェック・ボックスを選択すると、WebSphere MQ が、キュー・マネージャー内でメッセージをいくつかのセグメントに分けます。 |
持続モード | はい | いいえ | 自動 | このプロパティーは、メッセージを持続的に書き込むかどうかを制御します。 有効な値は、「自動」、「はい」、「いいえ」、および「キューの定義どおり」です。 |
トランザクション・モード | はい | いいえ | 自動 | このプロパティーは、メッセージをトランザクションとして書き込むかどうかを制御します。 有効な値は、「自動」、「はい」、および「いいえ」です。 |
MQReply ノードの「妥当性検査」プロパティーについては、次の表に説明されています。
これらのプロパティーの詳細については、妥当性検査プロパティーを参照してください。
プロパティー | M | C | デフォルト | 説明 | mqsiapplybaroverride コマンド・プロパティー |
---|---|---|---|---|---|
妥当性検査 | いいえ | はい | 継承 | このプロパティーは、妥当性検査を行うかどうかを制御します。 有効な値は、「なし」、「内容と値」、「内容」、および「継承」です。 | validateMaster |
失敗時の処置 | いいえ | いいえ | 例外 | このプロパティーは、妥当性検査が失敗した場合の動作を制御します。 「妥当性検査」を「内容」または「内容と値」に設定した場合にのみ、このプロパティーを設定できます。 有効な値は、「ユーザー・トレース」、「ローカル・エラー・ログ」、「例外」、および「例外リスト」です。 |
また MQReply ノードには、WebSphere Message Broker Toolkit インターフェースからアクセスまたは変更ができない次のプロパティーもあります。 しかし、これらの値は、メッセージ・フローでメッセージを処理する際にブローカーが使用します。
プロパティー | 説明 |
---|---|
キュー・マネージャー名 | 「キュー名」で識別される出力キューが定義された WebSphere MQ キュー・マネージャーの名前。 この名前は、入力メッセージの MQMD ヘッダーの「ReplyTo」フィールドから取り出されます。 |
キュー名 | 出力メッセージが書き込まれる WebSphere MQ キューの名前。 この名前は、入力メッセージの MQMD ヘッダーの「ReplyTo」フィールドから取り出されます。 |
宛先 | このプロパティーの値は常に「応答」です。 |
プロパティー | M | C | デフォルト | 説明 |
---|---|---|---|---|
イベント | いいえ | いいえ | なし | ノードに対して定義したイベントが、このタブに表示されます。 デフォルトでは、メッセージ・フローのどのノードに対してもモニター・イベントは定義されません。 ノードのモニター・イベントを作成、変更、または削除するには、「追加」、「編集」、および「削除」を使用します。詳しくは、モニター・プロパティーを使用したモニター・イベント・ソースの構成を参照してください。 「使用可能」チェック・ボックスを選択またはクリアすることによって、ここに表示されているイベントを使用可能および使用不可に設定できます。 |