【发布时间】:2017-01-03 01:12:39
【问题描述】:
我正在使用 Spring 集成连接到 JMS 消息队列。 我使用的 JMS Provider 是 Apache ActiveMQ。
我有以下读取 JMS 消息的类(具有 ServiceActivator 方法):
@Component
public class MessageReader
{
@ServiceActivator
public Entity onMessage(Message<Entity> inboundMessage) {
System.out.println(" -------Message Read Start--------");
System.out.println(inboundMessage.getHeaders());
System.out.println(" -------Message Headers Reading completed--------");
Entity payload = null;
try{
payload = inboundMessage.getPayload();
System.out.println(" -------Message Read End--------");
}catch(Exception e){
e.printStackTrace();
}
return payload;
}
}
在这里,Entity 是我的应用程序中的 POJO。
从 JMS 队列读取消息时,我收到以下异常:
java.lang.ClassCastException: org.apache.activemq.command.ActiveMQObjectMessage cannot be cast to com.poc.pojo.Entity
我应该如何解决这个问题?
谢谢
【问题讨论】:
-
您似乎在尝试错误地使用框架;您需要显示完整的堆栈跟踪以及您是如何配置应用程序的。
标签: spring spring-integration spring-jms