使用@StreamListener时,无法在Kafka Consumer中反序列化有效负载(Spring云流)

时间:2019-05-23 19:17:51

标签: spring-boot apache-kafka-connect spring-cloud-stream

我有kafka-connect jdbc连接器生产商,该生产商正在将消息发布到主题A。我可以确认val转换器设置为JsonSerialiser。 另一个微服务尝试使用来自主题A的消息。

@StreamListener(A.class)
public void handleMessage(@Payload PojoA pojoA){}

但是这里的问题出在pojoA中,没有设置值。

我的理解是,如果我在pojoA中具有@JsonProperty批注,Spring将应用适当的messageConverter并将其转换为pojoA。但这似乎没有发生,也没有给出任何错误。

当我更改

public void handleMessage(@Payload String message){}

我可以看到整个原始json被Struct{ }打印

我可以确认在Producer中将val.converter设置为JsonSerialiser。

需要做些什么才能由Spring自动将消息转换为Pojo?我认为不需要CustomMessageConverter,因为它需要转换为json。

0 个答案:

没有答案