com.fasterxml.jackson.databind.deser.std.StringDeserializer is not an instance of org.apache.kafka.c
已于 2022-10-09 11:13:59 修改
2020-07-20 16:32:54

今天springboot 项目配置kafka消费者,出现了一个错误

com.fasterxml.jackson.databind.deser.std.StringDeserializer is not an instance of org.apache.kafka.common.serialization.Deserializer
	at org.apache.kafka.common.config.AbstractConfig.getConfiguredInstance(AbstractConfig.java:263)
	at org.apache.kafka.clients.consumer.KafkaConsumer.<init>(KafkaConsumer.java:688)

从报错信息可以看出,com.fasterxml.jackson.databind.deser.std.StringDeserializer 不是
org.apache.kafka.common.serialization.Deserializer的实例,说明引用jar包引用错误
查找代码,发现

        propsMap.put(ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG, StringDeserializer.class);
        propsMap.put(ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG, StringDeserializer.class);

StringDeserializer引用的jar引用错了
错误引用:

import com.fasterxml.jackson.databind.deser.std.StringDeserializer;

正确的引用:

import org.apache.kafka.common.serialization.StringDeserializer;

java交流群,欢迎大佬和java学习者加入:3446-35699

MEAP Edition, Manning Early Access Program, Kafka Streams in Action, Version 4  PART 1: GETTING STARTED WITH KAFKA STREAMS PART 2: KAFKA STREAMS DEVELOPMENT PART 3: ADMINISTERING KAFKA STREAMS PART 4: ADVANCED CONCEPTS WITH KAFKA STREAMS package com.config; import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.module.SimpleModule; import . 赠送jar包:jackson-databind-2.12.5.jar; 赠送原API文档:jackson-databind-2.12.5-javadoc.jar; 赠送源代码:jackson-databind-2.12.5-sources.jar; 赠送Maven依赖信息文件:jackson-databind-2.12.5.pom; 包含翻译后的API文档:jackson-databind-2.12.5-javadoc-API文档-中文(简体)版.zip; Maven坐标:com.fasterxml.jackson.core:jackson-databind:2.12.5; 标签:fasterxmljackson、core、databind、中文文档、jar包、java; 使用方法:解压翻译后的API文档,用浏览器打开“index.html”文件,即可纵览文档内容。 人性化翻译,文档中的代码和结构保持不变,注释和说明精准翻译,请放心使用。 2018-09-06 09:41:04.973 ERROR 1092 --- [nio-8080-exec-2] o.a.c.c.C.[.[.[.[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [/girl] threw excepti... 2018-01-25 08:19:07,104 INFO  [org.apache.cxf.interceptor.LoggingInInterceptor] - Inbound Message ---------------------------- ID: 2 Address: http://localhost:8080/ibmp/ws/AppBankDevicesInfoRestSer 遇到这个问题可能就是版本较低出现问题,我的springboot parent版本为2.3.2.RELEASE <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.3.2.RELEASE</version> <relativeP 今天用springboot+themeleaf+hibernate做项目,用ajax实现前端后台交互,却意外地发现这种错误,搞了一个下午,尝试过百度的多种方法,都宣告失败,直到看到这篇文章才有所觉悟(http://www.cnblogs.com/sxdcgaq8080/p/5765392.html),这只是原因之一;1 . 错误信息:at com.fasterxml.jackson.databin... 反正我这样写报了异常出来,org.apache.kafka.common.serialization.StringDeserializer is not an instance 下面的两行代码我运行会报错 properties.setProperty("key.serializer", StringDeserializer.class.getName()); properties.setProp... import com.fasterxml.jackson.databind.JsonSerializer; import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer; import org.springframework.beans.factory.annotation.Value; 几天前使用了Jackson对数据的自定义序列化。突发灵感,利用此方法来简单实现接口返回数据脱敏,故写此文记录。 核心思想是利用JacksonStdSerializer,@JsonSerialize,以及自己实现的数据脱敏过程。 使用效果如下: 首先在需要进行脱敏的VO字段上面标注相关脱敏注解 调用接口即可看到脱敏效果 实现过程如下: 1. 定义脱敏的过程实现 * Created by EalenXie on 2021/9/24 15:52 * 顶级的脱敏器 json格式数据中存在null值,导致无法数据json化 Object is null (through reference chain: net.sf.json.JSONObject["data"]->net.sf.json.JSONObject["colorRingName"]->net.sf.json.JSONNull...