【FastJSON坑】--- java实体包含实体转换JSON报错

来源:互联网 发布:2013年上证指数数据 编辑:程序博客网 时间:2024/05/22 12:23

本人用的是FastJSON,由于业务需求在实体里面封装了另一个实体,例如

class A{   private name ;   private List<B> b;   get set() ...}class B{   private name;   get set() ...}


在解析的时候报错:

Caused by: java.lang.VerifyError: (class: com/alibaba/fastjson/parser/deserializer/FastjsonASMDeserializer_2_BusinessEntity, method: deserialze signature: (Lcom/alibaba/fastjson/parser/DefaultJSONParser;Ljava/lang/reflect/Type;Ljava/lang/Object;I)Ljava/lang/Object;) Accessing value from uninitialized register 47at java.lang.Class.getDeclaredConstructors0(Native Method)at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671)at java.lang.Class.getConstructor0(Class.java:3075)at java.lang.Class.getConstructor(Class.java:1825)

反复查找,发现是FastJSON ASM反序列化的坑啊。。。。

挂上链接 :https://github.com/alibaba/fastjson/issues/383

于是我在处理JSON转换的方法体加入 

static{ParserConfig.getGlobalInstance().setAsmEnable(false);}
关闭ASM ,问题解决

原创粉丝点击