我在使用Apache Commons JMS组件时遇到了问题。如果我使用InOut交换模式将消息放入队列并且JMS服务器关闭,则会收到java.net.ConnectException,并且每5000毫秒会发起一次恢复尝试。我假设骆驼隐式创建一个消费者端点来侦听replyTo队列,所以我不确定是否可以禁用这个行为。JMS组件 - ConnectException for InOut模式
有没有办法在这种情况下禁用恢复?
我在使用Apache Commons JMS组件时遇到了问题。如果我使用InOut交换模式将消息放入队列并且JMS服务器关闭,则会收到java.net.ConnectException,并且每5000毫秒会发起一次恢复尝试。我假设骆驼隐式创建一个消费者端点来侦听replyTo队列,所以我不确定是否可以禁用这个行为。JMS组件 - ConnectException for InOut模式
有没有办法在这种情况下禁用恢复?
下面是骆驼groovy路线。希望它能解决你的问题。
from("jms:queue:TEST?disableReplyTo=true")
.setExchangePattern(ExchangePattern.InOut)
/*Do Processing*/
.inOnly("jms:queue:TEST")
因为当前消息交换模式是InOut
的JMS组件期望的回复消息。如果您想向JMS组件发送“即发即丢”消息,则需要先将MEP更改为InOnly
。
实施例:
.to(ExchangePattern.InOnly, "activemq:somequeue")