文件夹usr进入消息正文

时间:2019-05-13 16:24:28

标签: ibm-mq ibm-integration-bus

使用IIB 10和MQ 9。 问题是,当您添加mqrfh2标头时,其部分会出现在正文中:

RFHUtil screenshot

    SET OutputRoot.MQMD.CodedCharSetId = InputRoot.Properties.CodedCharSetId;
    SET OutputRoot.MQMD.Format = 'MQRFH2';
    SET OutputRoot.MQMD.Version = MQMD_VERSION_2;
    SET OutputRoot.MQRFH2.(MQRFH2.Field)Format = 'MQRFH2';
    SET OutputRoot.MQRFH2.(MQRFH2.Field)Version = MQRFH_VERSION_2;
    SET OutputRoot.MQRFH2.(MQRFH2.Field)NameValueCCSID = InputRoot.Properties.CodedCharSetId;

    SET OutputRoot.MQRFH2.usr.errorDescription  = FIELDVALUE(Environment.Variables.exceptionMsg);

1 个答案:

答案 0 :(得分:3)

我认为您需要阅读documentation以获取MQRFH2消息。 MQRFH2消息的所有文件夹和头均在MQ消息正文中。如果接收方应用程序无法处理MQRFH2消息,则将其视为JMS消息或具有命名属性的纯消息。

如果您不知道:

MQRFH2消息== JMS消息==具有命名属性(即消息属性)的纯消息


已更新:

我刚刚注意到这一行:

SET OutputRoot.MQRFH2.(MQRFH2.Field)Format = 'MQRFH2';

这可能是您的问题。您正在将MQRFH2消息嵌入MQRFH2消息中。更改为以下内容:

SET OutputRoot.MQRFH2.(MQRFH2.Field)Format = 'MQSTR   ';

这表示MQRFH2消息的消息数据将被视为字符串数据(即JMSTextMessage)。