<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"/>
問題解決!
