【发布时间】:2017-12-12 02:31:39
【问题描述】:
我正在使用以下代码使用来自 JMS ActiveMQ 的消息:
<jms:message-driven-channel-adapter
id="helloJMSAdapater" destination="helloJMSQueue" connection-factory="jmsConnectionfactory"
channel="helloChannel" extract-payload="true" />
<integration:channel id="helloChannel" />
我的要求是从这里消费并将其发布到 Kafka 出站适配器。使用以下配置:
<int-kafka:outbound-channel-adapter
id="kafkaOutboundChannelAdapter"
kafka-producer-context-ref="kafkaProducerContext"
channel="inputToKafka">
</int-kafka:outbound-channel-adapter>
这是我想要实现的目标:
我的队列是一个持久主题,除非成功发布到 Kafka,否则不想确认记录。简而言之,我希望有一个从 jms 消费消息到将其发布到 Kafka 的事务行为。
我注意到我的消息立即出队,如果处理遇到一些异常,我无法重新处理它。我不希望这种情况发生。
- 另外,当 kafka 遇到一些问题时,我希望它返回到某个方法,以便我可以保留失败消息,并且如前所述不想确认它。
我真的很难让它发挥作用。有人可以帮帮我吗?
【问题讨论】:
标签: spring apache-kafka spring-integration activemq