我正在使用Spring Integration从队列中读取消息并将其写入多个队列。如果任何失败,我希望将消息写入失败队列,并且没有任何输出队列应该收到消息。为此,我该如何设置交易?我在入站和jms出站通道适配器上使用消息驱动的通道适配器。我正在使用拆分器来创建提供给jms出站通道适配器的多个消息(基于输出队列的数量)。 该流程将作为独立的Java应用程序运行。
感谢。
答案 0 :(得分:0)
你可以使用JMS来实现这个目标:
redelivery
配置queue
政策至0
DLQ
。在TX回滚的情况下,您的消息将不会再次传送给您的听众,只会转到DLQ
。
查看JMS规范中的更多信息。
<强>更新强>
根据Gary的建议解决方案:https://gist.github.com/artembilan/e7aff2afbf4ff4308159