Reading from a byte array threw an IOException

Blade 未结 1 5373
4137063
4137063 2020-04-24 11:39

一、该问题的重现步骤是什么?

异常:

2020-04-24 10:06:14.028 ERROR 21588 --- [  XNIO-1 task-1] o.s.c.l.e.BladeRestExceptionTranslator   : 服务器异常

java.lang.RuntimeException: Reading from a byte array threw an IOException (should never happen).


问题描述:

  项目编写了一个通用查询枚举的接口,第一次查所有的枚举类,并将每个枚举对象放入redis中,后面使用就可以从redis里面取了。

  我本地测试调用能成功返回:

   image.png



  但是代码提交后,同事在他本地测试时,就报了这个异常,很奇怪,代码都是一样的,网上说ProtoStuff序列化导致的,我看框架是用了这个东西。但不确定。恳求大佬帮看下

     

     业务代码:

       image.png

  

       image.png



1条回答
  •  smallchill
    smallchill (楼主)
    2020-04-24 17:14

    redis的读和写都会走自定义序列化,如果是不同的序列化,会导致读取失败。

    可以看下他的实现,序列化返回的是byte数组,反序列化传入的也需要是byte数组,如果是字符串那就会报错

    image.png

    1 讨论(0)
提交回复