Aplicativos cliente desenvolvidos para WebSphere Message Broker devem utilizar o cabeçalho de mensagens MQRFH2. Esses aplicativos então poderão utilizar todas as funções fornecidas por WebSphere Message Broker.
Aplicativos existentes do WebSphere MQ Publicação/Assinatura que utilizam o cabeçalho de mensagens MQRFH também são suportados pelo WebSphere Message Broker, mas a função está limitada àquela fornecida pelo WebSphere MQ Publicação/Assinatura.
O WebSphere MQ Publicação/Assinatura não suporta o formato MQRFH2. Cliente que estão conectados aos intermediários do WebSphere MQ Publicação/Assinatura devem utilizar o formato MQRFH.
Entretanto, os aplicativos clientes que precisam comunicar-se entre si utilizando Publicação/Assinatura podem fazer isso independentemente do formato da mensagem utilizado. O WebSphere Message Broker fornece conversão automática para assegurar que um assinante receba mensagens no formato correto.
A tabela a seguir mostra o mapeamento entre campos equivalentes nos cabeçalhos de mensagem MQRFH e MQRFH2:
Nome do Campo MQRFH | Nome do Campo MQRFH2 |
---|---|
MQPSCommand | Command |
MQPSDelOpts | DelOpt |
MQPSPubOpts | PubOpt |
MQPSPubTime | PubTime |
MQPSQMgrName | QMgrName |
MQPSQName | QName |
MQPSRegOpts | RegOpt |
MQPSSeqNum | SeqNum |
MQPSTopic | Tópico |
Todos os campos MQRFH2 que são mostrados na tabela estão contidos em uma pasta <psc>.
MQPSCommand Publish MQPSPubOpts RetainPub MQPSStreamName SAMPLE.BROKER.RESULTS.STREAM MQPSTopic "Sport/Soccer/State/LatestScore/Team1 Team2"
<psc> <Command>Publish</Command> <PubOpt>RetainPub</PubOpt> <Topic>Sport/Soccer/State/LatestScore/Team1 Team2</Topic> </psc>
Utilizando essas regras de mapeamento, o WebSphere Message Broker assegura que as publicações do MQRFH2 ainda possam ser recebidas por assinantes do MQRFH, e que publicações do MQRFH possam ser recebidas por assinantes do MQRFH2.
Filtros de conteúdo podem ser especificados por assinantes do MQRFH2 mesmo se o tópico que estão assinando está sendo publicado no formato MQRFH por um cliente WebSphere MQ Publicação/Assinatura, embora exista uma certa limitação quanto à compatibilidade. Essas limitações são descritas posteriormente neste tópico.
A tabela a seguir resume as opções válidas para clientes que utilizam os diferentes formatos de mensagem.
Mensagem |
Nome da Opção |
Valor da Opção |
Suporte |
---|---|---|---|
Todos os pedidos |
MQPSCommand |
DeletePub |
yesyes1 |
MQMD.Format |
MQFMT_PCF |
não |
|
MQMD.Report |
MQRO_PAN |
yesyes |
|
MQMD.MsgType |
MQMT_REQUEST |
yesyes |
|
MQMD.MsgId |
|
yes |
|
MQMD.CorrelId |
|
yes4 |
|
MQMD.ReplyToQ |
|
yes |
|
MQMD.ReplyToQMgr |
|
yes |
|
MQPSStreamName |
|
colocado como prefixo em topic3 |
|
MQPSTopic |
|
yes |
|
Todos os pedidos exceto |
MQPSQMgrName |
|
yes |
MQPSQName |
|
yes |
|
MQPSRegOpts |
CorrelAsId |
yes |
|
Delete Publication |
MQPSDelOpts |
Local |
yes5 |
Deregister Publisher1 |
MQPSRegOpts |
DeregAll |
yes |
Cancelar Registro de Assinante |
MQPSRegOpts |
DeregAll |
yes |
Publish |
Campos do MQMD |
Conforme especificado pelo MQPS2 |
yes |
MQPSRegOpts |
Anon |
yes7 |
|
Local |
yes5 |
||
DirectReq |
yes1 |
||
MQPSPubOpts |
NoReg |
yes1 |
|
RetainPub |
yes (set by publisher) |
||
IsRetainedPub |
yes (set by broker) |
||
OtherSubsOnly |
yes |
||
MQPSPubTime |
|
yes |
|
MQPSSeqNum |
|
yes |
|
MQPSStringData1 |
|
yes |
|
MQPSIntData1 |
|
yes |
|
Register Publisher1 |
MQPSRegOpts |
Anon |
yes7 |
Local |
yes5 |
||
DirectReq |
yes1 |
||
Registrar Assinante |
MQPSRegOpts |
Anon |
yes7 |
Local |
yes5 |
||
NewPubsOnly |
yes |
||
PubOnReqOnly |
yes |
||
InclStreamName |
no3 |
||
InformIfRet |
yes |
||
Todas as respostas |
MQPSCompCode |
|
novos valores adicionados6 |
MQPSReason |
|
novos valores adicionados6 |
|
MQPSReasonText |
|
novos valores adicionados6 |
|
MQPSCommand |
|
comando para qual isto é uma |