Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/387.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java springjms:向webspheremq发送JMSObjectMessage,但接收jmsbytes消息_Java_Spring_Ibm Mq_Spring Jms - Fatal编程技术网

Java springjms:向webspheremq发送JMSObjectMessage,但接收jmsbytes消息

Java springjms:向webspheremq发送JMSObjectMessage,但接收jmsbytes消息,java,spring,ibm-mq,spring-jms,Java,Spring,Ibm Mq,Spring Jms,我使用Spring的JmsTemplate将ObjectMessage发送到MQ队列: this.jmsTemplate.sendthis.queue,新MessageCreator{ 公共消息createMessageSession会话引发JMSExException{ MyPayload payload=新的MyPayload; 有效载荷。设置某物。。。; return session.createObjectMessagepayload; } }; 发送的消息类型为com.ibm.jms.

我使用Spring的JmsTemplate将ObjectMessage发送到MQ队列:

this.jmsTemplate.sendthis.queue,新MessageCreator{ 公共消息createMessageSession会话引发JMSExException{ MyPayload payload=新的MyPayload; 有效载荷。设置某物。。。; return session.createObjectMessagepayload; } }; 发送的消息类型为com.ibm.jms.JMSObjectMessage,但相应的目标接收的消息类型为com.ibm.jms.jmsBytes消息:

Message Message=this.jmsTemplate.receivethis.queue; 知道转换发生的原因和地点吗

没有得到真正的回答


进一步信息:文本消息作为com.ibm.jms.JMSTextMessage接收,仅包含字符串的ObjectMessage也转换为com.ibm.jms.jmsbytes消息。

找到它,我使用了错误的传输类型:

相反,它应该是:


MyPayload是否实现了Serializable?是的,它实现了Serializable。在服务器端的类路径中是否可以找到MyPayload?是的,两个组件共享包含MyPayload的相同jar文件。尝试发送文本消息和包含字符串的对象消息。如果得到相同的结果,我想队列配置可能有问题:它无法将字节缓冲区转换为对象。否则,服务器端的负载或类路径都有问题。