メッセージ形式

WebSphere Message Broker 用に開発されたクライアント・アプリケーションは、 MQRFH2 メッセージ・ヘッダーを使用しなければなりません。 そうすると、これらのアプリケーションで、WebSphere Message Broker に備えられているすべての機能を使用できます。

MQRFH メッセージ・ヘッダーを使用する既存のWebSphere MQ パブリッシュ/サブスクライブ・アプリケーションも WebSphere Message Broker でサポートされますが、 機能はWebSphere MQ パブリッシュ/サブスクライブに備えられている機能に制限されます。

WebSphere MQ パブリッシュ/サブスクライブ では、MQRFH2 形式をサポートしていません。 WebSphere MQ パブリッシュ/サブスクライブ・ブローカーに接続されているクライアントでは、MQRFH 形式を使用する必要があります。

しかし、パブリッシュ/サブスクライブを使用して相互に通信する必要のあるクライアント・アプリケーションは、使用しているメッセージ形式に関係なく相互に通信できます。 WebSphere Message Broker には、サブスクライバーが正しい形式でメッセージを受信できるよう自動変換機能があります。

以下の表は、MQRFH メッセージ・ヘッダーと MQRFH2 メッセージ・ヘッダーで同等のフィールドの対応を示しています。

MQRFH フィールド名 MQRFH2 フィールド名
MQPSCommand Command
MQPSDelOpts DelOpt
MQPSPubOpts PubOpt
MQPSPubTime PubTime
MQPSQMgrName QMgrName
MQPSQName QName
MQPSRegOpts RegOpt
MQPSSeqNum SeqNum
MQPSTopic トピック

表に示されているすべての MQRFH2 フィールドは、 <psc> フォルダーに含まれています。

表に示されていないフィールド名は、共通の意味がないか、 2 つのヘッダー形式のどちらか一方のみが有効なものです。 認識されないか他の形式にするには適当ではないフィールド名は示されていません。 例えば、以下のような MQRFH の名前/値の領域があります。
MQPSCommand Publish
MQPSPubOpts RetainPub
MQPSStreamName SAMPLE.BROKER.RESULTS.STREAM
MQPSTopic "Sport/Soccer/State/LatestScore/Team1 Team2"
これは、以下の MQRFH2 フォルダーに変換されます。
<psc>
<Command>Publish</Command>
<PubOpt>RetainPub</PubOpt>
<Topic>Sport/Soccer/State/LatestScore/Team1 Team2</Topic>
</psc>

このような対応の規則を使用することにより、WebSphere Message Broker では、MQRFH サブスクライバーは、 MQRFH2 パブリケーションを受信でき、MQRFH2 サブスクライバーは、MQRFH パブリケーションを受信できます。

MQRFH2 サブスクライバーがサブスクライブしているトピックが、WebSphere MQ パブリッシュ/サブスクライブ・クライアントによって MQRFH 形式でパブリッシュされたものであっても、 互換性にある程度の制限はありますが、MQRFH2 サブスクライバーは内容フィルターを指定できます。 この制限については、このトピックの後の部分で説明されます。

次の表は、異なるメッセージ形式を使用するクライアントに有効なオプションを要約したものです。

メッセージ

オプション名

オプション値

サポート

すべての要求
(クライアントからブローカー)

MQPSCommand

DeletePub
DeregPub
DeregSub
パブリッシュ
RegPub
RegSub
ReqUpdate

はい
はい1
はい
はい
はい1
はい
はい

MQMD.Format

MQFMT_PCF
MQFMT_RF_HEADER

いいえ
はい

MQMD.Report

MQRO_PAN
MQRO_NAN

はい
はい

MQMD.MsgType

MQMT_REQUEST
MQMT_DATAGRAM

はい
はい

MQMD.MsgId

 

はい

MQMD.CorrelId

 

はい4

MQMD.ReplyToQ

 

はい

MQMD.ReplyToQMgr

 

はい

MQPSStreamName

 

トピックの先頭3

MQPSTopic

 

はい

すべての要求 (ただし次を除く)
Delete Publication

MQPSQMgrName

 

はい

MQPSQName

 

はい

MQPSRegOpts

CorrelAsId

はい

Delete Publication

MQPSDelOpts

Local

はい5

Deregister Publisher1

MQPSRegOpts

DeregAll

はい

Deregister Subscriber

MQPSRegOpts

DeregAll

はい

パブリッシュ

MQMD フィールド

MQPS で指定したとおり2

はい

MQPSRegOpts

Anon

はい7

Local

はい5

DirectReq

はい1

MQPSPubOpts

NoReg

はい1

RetainPub

はい (パブリッシャーによる設定)

IsRetainedPub

はい (ブローカーによる設定)

OtherSubsOnly

はい

MQPSPubTime

 

はい

MQPSSeqNum

 

はい

MQPSStringData1

 

はい

MQPSIntData1

 

はい

Register Publisher1

MQPSRegOpts

Anon

はい7

Local

はい5

DirectReq

はい1

Register Subscriber

MQPSRegOpts

Anon

はい7

Local

はい5

NewPubsOnly

はい

PubOnReqOnly

はい

InclStreamName

いいえ3

InformIfRet

はい

すべての応答
(ブローカーからクライアント)

MQPSCompCode

 

新しい値を追加6

MQPSReason

 

新しい値を追加6

MQPSReasonText

 

新しい値を追加6

MQPSCommand

 

これが応答となるコマンド

注:
  1. このオプションは、マイグレーションの目的でサポートされています。
  2. MQPS はWebSphere MQ パブリッシュ/サブスクライブです。
  3. ストリーム名パラメーターは、実際にトピックの先頭へ付けられます。 ストリーム名は、Publication ノードのプロパティー implicitStreamNaming がセットされていれば、 キュー名から推論できます。
  4. クライアント ID は、キュー・マネージャー名、キュー名、そして任意で相関 ID (これは、 ID オプションとしての相関 ID が設定される場合) を連結したものとなります。 したがって、アプリケーション ID は、MQPSQMgrName:MQPSQName[:correlId] になります。 WebSphere MQ パブリッシュ/サブスクライブによって指定されるデフォルト値は、メッセージにこれらの値がない場合に使用されます。
  5. このオプションの動作は異なります。
  6. 新しい値が追加されています。
  7. WebSphere Message Broker には無視されます。
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック
Copyright IBM Corporation 1999, 2006 最終更新: 08/21/2006
aq19780_