spring cloud stream kafka:复制@StreamListener映射'输入'

时间:2016-10-07 19:27:03

标签: java spring spring-boot spring-cloud-stream spring-kafka

我有一个生产者(Source)将消息写入Kafka输出通道,该生产者发送不同类型的对象。在消费者方面(Sink)我希望在同一输入通道上有多个@Streamlistener方法,每个方法具有不同的参数类型,目前它不起作用我得到Duplicate @StreamListener mapping for 'input'

这是我的消费者代码:

@StreamListener(Sink.INPUT)
public void on(PostUpvotedEvent event) {

}

@StreamListener(Sink.INPUT)
public void on(PostDownvotedEvent event) {

}

有没有比使用单个@StreamListener方法更好的解决方案来测试消息类型以选择要调用的方法?

1 个答案:

答案 0 :(得分:0)

现在不支持同一绑定元素上的多个@StreamListener方法。在您的情况下支持这一点将很好地在入站通道上注册多个订户。

请创建功能请求here