入站和出带JMS队列mule类转换
我有一个简单的骡子设置。读取JMS队列处理消息,并在异常情况下发送到DLQ。使用Mule 3.3.0和HornetQ 2.3.0.BETA1。我得到以下例外情况:入站和出带JMS队列mule类转换,jms,mule,Jms,Mule,我有一个简单的骡子设置。读取JMS队列处理消息,并在异常情况下发送到DLQ。使用Mule 3.3.0和HornetQ 2.3.0.BETA1。我得到以下例外情况: Caused by: java.lang.ClassCastException: org.mule.transport.jms.ReusableTopicSessionWrapper cannot be cast to javax.jms.QueueSession at org.mule.transport.jms.Jms10
Caused by: java.lang.ClassCastException: org.mule.transport.jms.ReusableTopicSessionWrapper cannot be cast to javax.jms.QueueSession
at org.mule.transport.jms.Jms102bSupport.createDestination(Jms102bSupport.java:231)
at org.mule.transport.jms.Jms11Support.createDestination(Jms11Support.java:142)
at org.mule.transport.jms.JmsMessageDispatcher.dispatchMessage(JmsMessageDispatcher.java:163)
at org.mule.transport.jms.JmsMessageDispatcher.doDispatch(JmsMessageDispatcher.java:81)
at org.mule.transport.AbstractMessageDispatcher.process(AbstractMessageDispatcher.java:99)
... 113 more
我的设置:
<jms:connector name="connector.jms" maxRedelivery="10" doc:name="JMS"
jndiInitialFactory="org.jnp.interfaces.NamingContextFactory"
jndiProviderUrl="jnp://localhost:1099"
connectionFactoryJndiName="ConnectionFactory"
createMultipleTransactedReceivers="true"
numberOfConcurrentTransactedReceivers="100"
acknowledgementMode="AUTO_ACKNOWLEDGE">
<reconnect-forever frequency="5000"/>
</jms:connector>
<flow name="jmsListenerFlow1" doc:name="jmsListenerFlow1">
<jms:inbound-endpoint queue="adsLogQueue" connector-ref="connector.jms" doc:name="JMS">
<jms:transaction action="ALWAYS_BEGIN"/>
</jms:inbound-endpoint>
<component >
<spring-object bean="logSaver"/>
</component>
<catch-exception-strategy>
<jms:outbound-endpoint queue="DLQ"> <!-- [2] -->
<jms:transaction action="ALWAYS_JOIN" />
</jms:outbound-endpoint>
</catch-exception-strategy>
</flow>
这可能是骡子身上的虫子吗?还是我做错了什么?在
jms:connector
上设置specification=“1.1”
,谢谢,我也找到了:)我删除了hornetq标签,因为在这个问题上我没有看到任何与hornetq相关的内容。就是骡子。虽然大黄蜂Q被使用,但这不是问题的一部分。