zoukankan      html  css  js  c++  java
  • org.apache.kafka.common.errors.SerializationException: Error deserializing... Caused by: org.apache.kafka.common.errors.SerializationException: Size of data received by IntegerDeserializer is not 4

    原因,最近开发的kafka消息接收,突然报如下错:

    org.apache.kafka.common.errors.SerializationException: Error deserializing... Caused by: org.apache.kafka.common.errors.SerializationException: Size of data received by IntegerDeserializer is not 4

    原因如下,我的kafka序列化配置中配置的序列化类如下:

    key.deserializer=org.apache.kafka.common.serialization.IntegerDeserializer
    value.deserializer=org.apache.kafka.common.serialization.StringDeserializer
    IntegerDeserializer源码如下:
    public Integer deserialize(String topic, byte[] data) {
            if (data == null) {
                return null;
            } else if (data.length != 4) {
                throw new SerializationException("Size of data received by IntegerDeserializer is not 4");
            } else {
                int value = 0;
                byte[] arr$ = data;
                int len$ = data.length;
    
                for(int i$ = 0; i$ < len$; ++i$) {
                    byte b = arr$[i$];
                    value <<= 8;
                    value |= b & 255;
                }
    
                return value;
            }
        }

    解决方法,将配置做如下修改:

    key.deserializer=org.apache.kafka.common.serialization.StringDeserializer
    value.deserializer=org.apache.kafka.common.serialization.StringDeserializer

    问题解决。

     
  • 相关阅读:
    ideaj项目切换不同版本的jdk
    物理机(window)安装linux系统
    linux jar自启动
    swap扩容
    tomcat加载外部项目
    springboot2.3.2控制台输出@RequestMapping路径
    linux磁盘扩容
    springboot-easycode配置文件修改
    List
    Map HashMap跟HashTable
  • 原文地址:https://www.cnblogs.com/jxxblogs/p/13272600.html
Copyright © 2011-2022 走看看