サービス統合での追加の MQRFH2 ヘッダー・フィールドのマッピング
IBM MQ メッセージ・ヘッダー (MQRFH2) には、 サービス統合バスに固有で、IBM MQ では使用されない機能を許可する追加フィールドがあります。 IBM MQ が、あるサービス統合バスから 別のサービス統合バスにメッセージをトランスポートするとき、これらのフィールドは、IBM MQ では 不要でも、サービス統合アプリケーションでは使用できる情報を伝達します。
追加フィールドは、アプリケーション・メッセージの MQRFH2 ヘッダー内の <sib> フォルダーおよび <jms> フォルダーに挿入されます。 これらのフィールドは、JMS メッセージ・フィールドまたはプロパティーとしては表示されません。
メッセージが IBM MQ に送信される際、以下が両方とも当てはまる場合、<sib> フォルダーはメッセージの MQRFH2 ヘッダーに組み込まれます。
- サービス統合宛先の IBM MQ キュー・ポイント属性は、MQRFH2 ヘッダーを使用するように構成されている場合。
- <sib> フォルダーのコンテンツに対応する フィールドが、サービス統合メッセージ内に設定されている場合。
MQRFH2 ヘッダーおよびフィールド (<jms> フォルダー) | SIBusMessage フィールドまたはプロパティー |
---|---|
Frp (Dst フィールドに追加) | 転送ルーティング・パスのヘッダー・フィールド |
Rrp (Rto フィールドに追加) | 逆ルーティング・パスのヘッダー・フィールド |
MQRFH2 ヘッダーおよびフィールド (<sib> フォルダー) | SIBusMessage フィールドまたはプロパティー |
---|---|
RTopic | 応答トピック |
RPri | 応答優先順位 |
RPer | 応答パーシスタンス |
RTTL | 応答存続時間 |
JsApiUserId | サービス統合アプリケーション用のアプリケーション・ユーザー ID (JMSXUserId) |
JsDst | JMS 宛先 |
JsFmt | メッセージ・フォーマット |
JsSysMsgId | システム・メッセージ ID。 |
サービス統合と IBM MQ の間の JMS 宛先プロパティーのマッピング
サービス統合 宛先のプロパティーは IBM MQ キューによって使用されるものとは異なり、 厳密にマップすることはできません。サービス統合が IBM MQ を使用してメッセージを トランスポートする際には、JMS 宛先プロパティーの両方の表記をメッセージ内に保持しておくと便利です。 これに対処するため、メッセージが サービス統合を離れて IBM MQ に入ったときに、サービス統合宛先プロパティーを保存するために、RFH2 プロパティーを RFH2 ヘッダーに導入します。
サービス統合宛先プロパティーは、 シリアライズされて、16 進数ストリングとしてフォーマットされ、サービス統合 RFH2 フォルダー (<sib> フォルダー) の JsDst プロパティーを 使用して保存されます。IBM MQ アプリケーションはこのフォルダーを使用しませんが、 メッセージが別のサービス統合アプリケーションによって取得される場合は、この情報を使用することができます。
例えば、サービス統合宛先 SIQ1 は、キュー・マネージャー QM1 に
ある IBM MQ キュー MQQ1 でローカライズされます。以下のアクションは、サービス統合アプリケーションがメッセージを SIQ1 に送信するときに発生します。
- PMQ1 のシリアライズされた 表現は、JsDst プロパティーを使用して RFH2 ヘッダーの <sib> フォルダーに格納されます。
- メッセージは MQQ1 に保存されます。
- また、ストリング "queue://QM1/MQQ1" は、Dst プロパティーを使用して RFH2 ヘッダーの <jms> フォルダーに格納されます。
注: IBM MQ サーバー・バス・メンバーが RFH2 ヘッダーを使用しないように構成されている場合、メッセージが IBM MQ に入る際に JMS 宛先は保持されません。この場合、サービス統合アプリケーションは
引き続き JMS メッセージを取得することができますが、JMS 宛先プロパティーの検証を行うと JMS 例外が発生します。