从jms队列到Servicemix 6(ActiveMQ)

时间:2016-10-03 12:28:38

标签: apache-camel jms activemq apache-karaf apache-servicemix

我想制作一条从jms到POJO的camel路由,它可以接收一个TextMessage。 现在我路由到这样的bean:

 from("jms:person_queue").to("bean:QueueConsumerBean?method=consume")

然后我在bean方法中收到一个String。我宁愿有一个带有" onMessage"的自定义类。方法和TextMessage。原因是我想对邮件使用客户端确认,就像交易一样。

或者是否有其他方法可以使用客户端确认?

1 个答案:

答案 0 :(得分:1)

Camel的JMS使用者会自动为您处理ack类型。如果路由成功,它将收到消息。如果它没有(即交换命中异常处理程序),它将回滚它。

大警告:CLIENT_ACKNOWLEDGE的行为不直观..根据JMS规范..它确认当前消息和会话中的所有先前...此无法计算是一个每消息的ack。如果您需要按消息确认..请使用TRANSACTED。