我实现了一个自定义<inbound-channel-adapter>
,它扩展了MessageProducerSupport
,有点像ImapIdleChannelAdapter
来自spring集成。此入站通道适配器的目标是在LDAP上启动持久性搜索,每次LDAP中发生新的更改时,它都会将更改发送到通道<int-http:outbound-channel-adapter>
。但是,我希望在成功发送消息时能够将其记录到已处理的数据库中。你能用一些想法帮助我完成这项任务吗?非常感谢你!
答案 0 :(得分:0)
实现这一目标的最简单方法是将channel
<int-http:outbound-channel-adapter>
作为publish-subscribe
并再添加一个<int-jdbc:outbound-channel-adapter>
。
仅当第一个订阅者完成其工作时才会调用此第二个订阅者。在这种情况下,相同的Message
将被发送到数据库适配器。
另一个选项基于<request-handler-advice-chain>
和ExpressionEvaluatingRequestHandlerAdvice
,当您可以将onSuccessExpression
与successChannel
一起指定,以便在适配器的良好结果上向其他频道发送内容处理