Websphere MQRFH2.usr进入主消息体
将WMQ7.0与WMB 6.1一起使用 我有一个流,在其中转换消息并使用MQRFH2.usr保存一些数据 但是,我面临的问题是,MQRFH2.usr将出现在主消息体中 我在不同的环境中部署了相同的代码,但我只在一个环境中遇到了这个问题 因此,这似乎不是一个代码问题。它与配置有关。 请说明可能的原因。检查队列设置。如果设置为Websphere MQRFH2.usr进入主消息体,websphere,ibm-mq,websphere-6.1,Websphere,Ibm Mq,Websphere 6.1,将WMQ7.0与WMB 6.1一起使用 我有一个流,在其中转换消息并使用MQRFH2.usr保存一些数据 但是,我面临的问题是,MQRFH2.usr将出现在主消息体中 我在不同的环境中部署了相同的代码,但我只在一个环境中遇到了这个问题 因此,这似乎不是一个代码问题。它与配置有关。 请说明可能的原因。检查队列设置。如果设置为NONE,则行为如下: 如果应用程序未创建消息句柄,则所有消息 属性将从MQRFH2中删除。MQRFH2中的名称/值对 邮件中保留了标题 请务必通读几遍,并可能使用不同的设置进
NONE
,则行为如下:
如果应用程序未创建消息句柄,则所有消息
属性将从MQRFH2中删除。MQRFH2中的名称/值对
邮件中保留了标题
请务必通读几遍,并可能使用不同的设置进行测试,以完全了解PROPCTL
如何修改应用程序接收的消息内容。检查队列的设置。如果设置为NONE
,则行为如下:
如果应用程序未创建消息句柄,则所有消息
属性将从MQRFH2中删除。MQRFH2中的名称/值对
邮件中保留了标题
请务必通读几遍,并可能使用不同的设置进行测试,以完全了解
PROPCTL
如何修改应用程序接收的消息内容。MQRFH2头(如果存在)始终位于消息的有效负载部分(这是webpshere组织消息的方式)。您可以接收一个或多个MQRFH2头(结构)
也许你只期待一个,却收到两个?这可以解释为什么您的消息数据被留下了乱七八糟的内容
我使用以下代码在收到消息时处理这些herd
MQRFH2 header = null;
// Find and store message length
int msglen = replyMessage.getMessageLength();
MQHeaderList list = new MQHeaderList(replyMessage);
int indexOf = list.indexOf("MQRFH2");
if (indexOf >= 0) {
header = (MQRFH2) list.get(indexOf);
msglen = msglen - header.size();
}
String msgText = replyMessage.readStringOfCharLength(msglen);
希望能有帮助
MartinsMQRFH2头(如果存在)始终位于消息的有效负载部分(这是webpshere组织消息的方式)。您可以接收一个或多个MQRFH2头(结构) 也许你只期待一个,却收到两个?这可以解释为什么您的消息数据被留下了乱七八糟的内容 我使用以下代码在收到消息时处理这些herd
MQRFH2 header = null;
// Find and store message length
int msglen = replyMessage.getMessageLength();
MQHeaderList list = new MQHeaderList(replyMessage);
int indexOf = list.indexOf("MQRFH2");
if (indexOf >= 0) {
header = (MQRFH2) list.get(indexOf);
msglen = msglen - header.size();
}
String msgText = replyMessage.readStringOfCharLength(msglen);
希望能有帮助
马丁斯我想这是我的又一批风滚草d正在使用哪个版本的WMQ QMgrs?@T.Rob所有队列管理器都在WMQ 7.0上,我想这对我来说是又一批风滚草…:d正在使用哪个版本的WMQ QMgrs?@T.Rob所有队列管理器都在WMQ 7.0上,以获取信息。实际上,在我的例子中,问题是MQMD.FORMAT,它应该是“MQRFH2”,但它是“MQSTR”。但是,仍然不知道它在WMB 8和WMQ 7.0组合中如何工作良好。它只在WMB6.1和WMQ 7.0组合中失败。运行跟踪。我希望您会发现WMB 6没有设置
MQGMO_属性
,但WMB 8将其设置为所描述的值之一。感谢您提供的信息。实际上,在我的例子中,问题是MQMD.FORMAT,它应该是“MQRFH2”,但它是“MQSTR”。但是,仍然不知道它在WMB 8和WMQ 7.0组合中如何工作良好。它只在WMB6.1和WMQ 7.0组合中失败。运行跟踪。我希望您会发现WMB 6没有设置MQGMO_属性
,但WMB 8将其设置为所描述的值之一。