我正在使用入站网关使用SOAP Web服务。我们需要在kafka主题中放置消息,并使用弹簧集成的声明方式向请求者返回同步确认。这可能吗?
public Acknowledgement process(@RequestPayload MessagePayload payload) {
// perform validation & logic
// need to send message to kafka topic using declarative way
// sending synchronous ack to request originator
return new Acknowledgement();
}
答案 0 :(得分:0)
使用XML时,kafka outbound channel adapter在使用java config sync
时有setSync(true)
属性sync="true"
。
调用线程(Web容器)将阻塞,直到kafka承担责任。如果您使用发布 - 订阅通道,请将kafka适配器作为第一个使用者,并将服务构建为Acknowledgement
第二个使用者(使用消费者中的order
属性以确保正确排序)。 / p>
或者您可以直接从控制器使用KafkaTemplate
。