0

我正在使用入站网关使用 SOAP Web 服务。我们需要将消息放入 kafka 主题中,并使用 Spring 集成的声明性方式向请求者返回同步确认。这可能吗 ?

    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(); 
    }
4

1 回答 1

0

使用 XML时使用 java config时,kafka 出站通道适配器有一个sync属性。setSync(true)sync="true"

调用线程(web 容器)将阻塞,直到 kafka 承担责任。如果您使用发布-订阅通道,请让 kafka 适配器成为第一个消费者,并使用服务来构建Acknowledgement第二个消费者(使用消费者order中的属性来确保正确排序)。

或者您可以KafkaTemplate直接从控制器中使用。

于 2017-01-05T23:25:02.963 回答