我想将杰克逊的ObjectMapper注入到Kafka的ConsumerFactory的JsonDeserializer中。我已经完成了这篇文章中提到的内容:

Inject ObjectMapper into Spring Kafka serialiser/deserialiser

但是,当我在不同主题上有多个@KafkaListener时,ConcurrentKafkaListenerContainerFactory使用属性映射构造ConcurrentMessageListenerContainer的多个实例来初始化ConsumerFactory,而不是传递给ConcurrentKafkaListenerContainerFactory.setConsumerFactory()的实例。只有第一个ConcurrentMessageListenerContainer使用正确的ConsumerFactory

如何解决此问题并正确配置Kafka?

最佳答案

每个侦听器都需要一个不同的使用者/容器工厂。然后使用@KafkaListener上的containerFactory属性指定要使用的工厂。

10-07 13:36