本人用的是FastJSON,由于业务需求在实体里面封装了另一个实体,例如class A{
private name ;
private List 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 47
at 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 ,问题解决