Active MQ 传输 ObjectMessage 异常

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Active MQ 传输 ObjectMessage 异常相关的知识,希望对你有一定的参考价值。

<bean id="targetConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">  
        <property name="brokerURL" value="tcp://localhost:61616"/>
        <!-- 如果传输的对象是Obeject 这里必须加上这句  否则会导致对象序列化失败 出现classnotfound异常  详细: http://activemq.apache.org/objectmessage.html -->
        <property name="trustAllPackages" value="true"/>
    </bean>  

在消费者接受队消息时,出现异常

javax.jms.JMSException: Failed to build body from content. Serializable class not available to broker. Reason: java.lang.ClassNotFoundException: Forbidden class com.guesslive.admin.common.mail.Mail! This class is not trusted to be serialized as ObjectMessage payload. Please take a look at http://activemq.apache.org/objectmessage.html for more information on how to configure trusted classes.

然后根据提供的地址找了下原因,在 ActiveMQConnectionFactory 中加入参数 

<property name="trustAllPackages" value="true"/>

问题解决!

以上是关于Active MQ 传输 ObjectMessage 异常的主要内容,如果未能解决你的问题,请参考以下文章

带有 Active-MQ 的 Mule 发布/订阅模型。如何在 Active-MQ JMS 中的消息到达时以异步方式调用 tomcat-consumers

初探active mq

Active MQ学习笔记

JMS 之 Active MQ的安全机制

JMS进阶-Spring整合Active MQ

JMS 之 Active MQ 消息存储