我目前的设置(部分)是这样的:
<channel id="chainInboundChannel">
<queue message-store="mongoDbMessageStore"/>
</channel>
<chain id="myChain" input-channel="chainInboundChannel">
<service-activator ref="service1" ... />
<service-activator ref="service2" ... />
<service-activator ref="service3" ... />
<service-activator ref="service4" ... />
</chain>
据推测,我的消息现在仍然存在。对于消息在队列中的时间,这似乎是正确的。但是当链接收到消息时,它将从消息存储中删除。因此,如果应用程序在消息处理过程中关闭,例如'service3',信息丢失了。
如何在链内处理消息时保持消息的持续存在?
可选 如果任何服务在某些特定情况下返回null,该怎么办?在这种情况下,应该删除该消息,因为它已经到了生命周期的末尾。