问题
最近在一个Spring Boot 项目中, 使用JMS 发送消息到IBM MQ,但是接收方收到的消息中始终多了一个RFH 消息头,导致消息解析失败.
<msg>......</msg>
最开始查到这个资料 IBM MQ消息中间件jms消息中RHF2消息头的处理
但是我项目我使用的是Spring Boot 2.x +JMS 模板发送的消息
jmsOperations.convertAndSend(iBMMQProperties.getQueueName(),MESSAGE);
所以始终找不到对应的设置地方.
经过辛苦的查阅资料, 终于找到了解决方案:
解决方案:
jmsOperations.convertAndSend("queue:///"+iBMMQProperties.getQueueName()+"?targetClient=1",MESSAGE);
或者
jmsTemplate.convertAndSend("queue:///"+iBMMQProperties.getQueueName()+"?targetClient=1",MESSAGE);
感谢解决方案提供者: Spring JMS模板 - 删除RFH标头信息