某些AMQP启用的代理程序(如Microsoft Service Bus或ActiveMQ)每个会话只允许一个活动的生产者或使用者。 Apache JMS Camel组件似乎无法正确处理此问题,这导致JMS在处理从例如发送的InOut消息时抛出异常。服务总线。
一个小的JMS测试应用程序,为生产者和消费者提供单独的会话。使用相同的会话,它会遇到同样的问题。
问题源于Spring JMS模板,该模板用作Camel JMS实现的基础。
有人知道如何克服这种行为吗?
答案 0 :(得分:0)
您可以定义第二个JMS组件并将其用于“其他”组件。 或者你可以关闭任何类型的连接池。
如果您使用XML,那么您可以定义第二个jms组件
<bean id="jms2" class="org.apache.camel.component.jms.JmsComponent"/>