【发布时间】:2014-04-01 14:02:31
【问题描述】:
目前我正在为我的应用程序使用 bluelock 的 camel-spring-amqp 组件。
我想要实现的是:
- 从 RabbitMQ 服务器拉消息。
- 在成功处理时将其保存到数据库/在异常时将其发送到另一个“错误”队列
- 告诉原始队列现在可以安全地从队列中删除消息。
在撰写本文时,我能够使用骆驼路线从 rabbit 中提取并持久保存到数据库。我真的不知道该怎么做是承认我的处理是对原始队列完成的。这是我目前的路线:
from("spring-amqp:EXCHANGE:queuename?autodelete=false&durable=true&type=direct&routingKey=")
.bean(Transform.class, "transform(byte[])")
.to("jpa:com.my.company.models.MyModel?entityType=java.util.ArrayList")
我意识到我可以将 acknowledgementMode 设置为 NONE。但是,一旦我坚持了我的信息,我就不知道如何“手动”确认。
感谢您的帮助!
【问题讨论】:
-
我在这里建议了一个类似问题的答案:stackoverflow.com/questions/24804448/… 希望对您有所帮助。
-
我也面临同样的问题。你能解决问题吗?
标签: spring rabbitmq apache-camel amqp