当产生的消息是消费者没有引用的模型类型时,如何反序列化消费者中的消息? [英] How to deserialize message in consumer when produced message is a model type which consumer has no reference to?

查看:19
本文介绍了当产生的消息是消费者没有引用的模型类型时,如何反序列化消费者中的消息?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试反序列化从Conumers作用域之外的服务生成的消息。 如果序列化/反序列化模型包不同,则Kafka模型不在受信任的包中。会出现错误

所以我想我有两个选择。或者以json/字符串的形式生成消息,或者让消费者包含生产者库并使用相同的模型来反序列化消息。

我想在消费者中反序列化时手动忽略消息的标头类型,但我未能做到这一点。有没有办法做到这一点,或者我是否坚持使用上述两个选项?

推荐答案

您需要将默认类型配置为使用者的版本,并将JsonDeserializer.USE_TYPE_INFO_HEADERS设置为False。

或者,您需要提供类型映射https://docs.spring.io/spring-kafka/docs/current/reference/html/#serdes-mapping-types

请参阅此答案以获取示例:How to map types using properties file in Kafka

这篇关于当产生的消息是消费者没有引用的模型类型时,如何反序列化消费者中的消息?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆