WebSphere® MQ バインディングの主な特徴は、ヘッダー、J2EE 成果物、および作成される J2EE リソースです。
相関スキーム
WebSphere MQ 要求/応答アプリケーションでは、応答メッセージと要求を相関付けるさまざまな手法の 1 つを使用できます。これらの手法には、MQMD MessageID フィールドと CorrelID フィールドが関連します。ほとんどの場合、要求側はキュー・マネージャーに MessageID を選択させ、応答アプリケーションがこれを応答の CorrelID にコピーすることを想定します。多くの場合、要求側と応答アプリケーションは、使用される相関手法を暗黙的に認識しています。応答アプリケーションは、要求の Report フィールドに設定されているさまざまなフラグの指示に従って、これらのフィールドを処理することもあります。
WebSphere MQ メッセージのエクスポート・バインディングを構成するときには、以下のオプションを使用できます。
応答の MsgId のオプション:
- 新規 MsgID (New MsgID)
- キュー・マネージャーが応答の固有の MsgId を選択できるようにします (デフォルト)。
- 要求の MsgID からコピーする (Copy from Request MsgID)
- 要求の MsgId フィールドから MsgId フィールドをコピーします。
- SCA メッセージからコピーする (Copy from SCA message)
- SCA 応答メッセージの WebSphere MQ ヘッダーに含まれる値を MsgId に設定します。
この値が存在しない場合は、キュー・マネージャーに新規 Id を定義させます。
- Report オプションを使用 (As Report Option)
- 要求の MQMD の Report フィールドを検査して、MsgId の処理方法を認識します。MQRO_NEW_MSG_ID オプションと MQRO_PASS_MSG_ID オプションがサポートされています。これらのオプションは、それぞれ「新規 MsgID (New MsgID)」および「要求の MsgID からコピーする (Copy from Request MsgID)」と同様に動作します。
応答の CorrelId のオプション:
- 要求の MsgID からコピーする (Copy from Request MsgID)
- 要求の MsgId フィールドから CorrelId フィールドをコピーします (デフォルト)。
- 要求の CorrelID からコピーする (Copy from Request CorrelID)
- 要求の CorrelId フィールドから CorrelId フィールドをコピーします。
- SCA メッセージからコピーする (Copy from SCA message)
- SCA 応答メッセージの WebSphere MQ ヘッダーに含まれる値を CorrelId に設定します。または、この値が存在しない場合は、空白のままにします。
- Report オプションを使用 (As Report Option)
- 要求の MQMD の Report フィールドを検査して、CorrelId の処理方法を認識します。MQRO_COPY_MSG_ID_TO_CORREL_ID オプションと MQRO_PASS_CORREL_ID オプションがサポートされています。これらのオプションは、それぞれ「要求の MsgID からコピーする (Copy from Request MsgID)」および「要求の CorrelID からコピーする (Copy from Request CorrelID)」と同様に動作します。
WebSphere MQ メッセージのインポート・バインディングを構成するときには、以下のオプションを使用できます。
要求の MsgId のオプション:
- 新規 MsgID (New MsgID)
- キュー・マネージャーが要求の固有の MsgId を選択できるようにします (デフォルト)。
- SCA メッセージからコピーする (Copy from SCA message)
- SCA 要求メッセージの WebSphere MQ ヘッダーに含まれる値を MsgId に設定します。
この値が存在しない場合は、キュー・マネージャーに新規 Id を定義させます。
応答相関のオプション:
- 応答の CorrelID を MsgId からコピーする (Response has CorrelID copied from MsgId)
- 応答メッセージの CorrelId フィールドが、要求の MsgId ごとに設定されていることを想定します (デフォルト)。
- 応答の MsgID を MsgId からコピーする (Response has MsgID copied from MsgId)
- 応答メッセージの MsgId フィールドが、要求の MsgId ごとに設定されていることを想定します。
- 応答の CorrelID を CorrelId からコピーする (Response has CorrelID copied from CorrelId)
- 応答メッセージの CorrelId フィールドが、要求の CorrelId ごとに設定されていることを想定します。
J2EE リソース
WebSphere MQ バインディングを J2EE 環境にデプロイすると、いくつかの J2EE リソースが作成されます。
パラメーター
- MQ 接続ファクトリー
- クライアントが WebSphere MQ プロバイダーとの接続を作成するために使用します。
- 応答接続ファクトリー
- 送信宛先が受信宛先とは異なるキュー・マネージャー上にある場合に、SCA MQ ランタイムが使用します。
- リスナー・ポート
- 接続ファクトリー、つまり宛先とメッセージ駆動型 Bean の間の関連を指定します。 これにより、ポートに関連付けられた配置済みメッセージ駆動型 Bean が宛先からメッセージを取得することができます。
- 宛先
- 送信宛先: インポートの場合は、要求または出力メッセージが送信される宛先です。
エクスポートの場合は、応答メッセージが送信される宛先です。
ただし、着信メッセージの MQMD ReplyTo ヘッダー・フィールドにより置き換えられた場合は、その宛先が優先されます。
- 受信宛先: 応答/要求または着信メッセージが格納される宛先です。