日期:2014-05-20  浏览次数:20987 次

activeMQ JMS 对象消息的问题
1.在消息生产端发送对象消息User user;在消费端接收消息是报错java.lang.ClassNotFoundException: com.bobo.activemq.User 提示找不到该对象。在消费端新建User对象也没用。应该怎么才能让消费端接收到对象数据。

2.生产端发送消息1,2,3,4 消费端接收消息1,2,3,4。
 这是关闭消费端连接,再次打开一个消息都接收不到。
 再次在生产端发送消息5,6 消费端接收消息1,2,3,4,5,6。
 怎么才能让消费端不重复接收。

使用的pub/sub模式 发送消息持久化到数据库中,消费端持久订阅。

------解决方案--------------------
1.在消息生产端发送对象消息User user;在消费端接收消息是报错java.lang.ClassNotFoundException: com.bobo.activemq.User 提示找不到该对象。在消费端新建User对象也没用。应该怎么才能让消费端接收到对象数据。

说明接收端没有com.bobo.activemq.User这个类,反序列化的时候出错了 


2.生产端发送消息1,2,3,4 消费端接收消息1,2,3,4。
 这是关闭消费端连接,再次打开一个消息都接收不到。
 再次在生产端发送消息5,6 消费端接收消息1,2,3,4,5,6。
 怎么才能让消费端不重复接收。

这个应该是JMS服务器有相关的设置吧,接收以后是否删除消息,或者是有个消息计数器,下次启动时继续从该计数器开始

------解决方案--------------------
探讨

1.在消息生产端发送对象消息User user;在消费端接收消息是报错java.lang.ClassNotFoundException: com.bobo.activemq.User 提示找不到该对象。在消费端新建User对象也没用。应该怎么才能让消费端接收到对象数据。

说明接收端没有com.bobo.activemq.User这个类,反序列化的时候出错了


2.生产端发送消息1……