com.alibaba.fastjson转实体遇到的一个大坑

  • 问题描述
    • 问题原因
    • 解决方案

问题描述

项目中使用fastjson将json字符串转换为对应的实体,某天因为业务需要,实体需要增加两个属性,然后就出问题了,具体的错误日记如下所示

 at java.awt.EventDispatchThread.run(Unknown Source)
Exception in thread "AWT-EventQueue-0" java.lang.VerifyError: (class: com/alibaba/fastjson/parser/deserializer/FastjsonASMDeserializer_2_TeasDeliveryDetailDto,method: deserialze signature: (Lcom/alibaba/fastjson/parser/DefaultJSONParser;Ljava/lang/reflect/Type;Ljava/lang/Object;I)Ljava/lang/Object;) Accessing value from uninitialized register 80at java.lang.Class.getDeclaredConstructors0(Native Method)at java.lang.Class.privateGetDeclaredConstructors(Unknown Source)at java.lang.Class.getConstructor0(Unknown Source)at java.lang.Class.getConstructor(Unknown Source)at com.alibaba.fastjson.parser.deserializer.ASMDeserializerFactory.createJavaBeanDeserializer(ASMDeserializerFactory.java:82)at com.alibaba.fastjson.parser.ParserConfig.createJavaBeanDeserializer(ParserConfig.java:639)at com.alibaba.fastjson.parser.ParserConfig.getDeserializer(ParserConfig.java:491)at com.alibaba.fastjson.parser.ParserConfig.getDeserializer(ParserConfig.java:348)at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:639)at com.alibaba.fastjson.JSON.parseObject(JSON.java:350)at com.alibaba.fastjson.JSON.parseObject(JSON.java:254)at com.alibaba.fastjson.JSON.parseObject(JSON.java:467)at com.sbp.view.MainV$7.actionPerformed(MainV.java:931)at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)at javax.swing.DefaultButtonModel.setPressed(Unknown Source)at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)at java.awt.Component.processMouseEvent(Unknown Source)at javax.swing.JComponent.processMouseEvent(Unknown Source)at java.awt.Component.processEvent(Unknown Source)at java.awt.Container.processEvent(Unknown Source)at java.awt.Component.dispatchEventImpl(Unknown Source)at java.awt.Container.dispatchEventImpl(Unknown Source)at java.awt.Component.dispatchEvent(Unknown Source)at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)at java.awt.Container.dispatchEventImpl(Unknown Source)at java.awt.Window.dispatchEventImpl(Unknown Source)at java.awt.Component.dispatchEvent(Unknown Source)at java.awt.EventQueue.dispatchEventImpl(Unknown Source)at java.awt.EventQueue.access$500(Unknown Source)at java.awt.EventQueue$3.run(Unknown Source)at java.awt.EventQueue$3.run(Unknown Source)at java.security.AccessController.doPrivileged(Native Method)at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)at java.awt.EventQueue$4.run(Unknown Source)at java.awt.EventQueue$4.run(Unknown Source)at java.security.AccessController.doPrivileged(Native Method)at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(Unknown Source)at java.awt.EventQueue.dispatchEvent(Unknown Source)at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)at java.awt.EventDispatchThread.pumpEvents(Unknown Source)at java.awt.EventDispatchThread.pumpEvents(Unknown Source)at java.awt.EventDispatchThread.run(Unknown Source)

很莫名其妙。

问题原因

在网上查了不少资料,一查才发现有不少坑友啊。这个问题主要原因是当json的属性达到某一个数值时就会出现,而且不同的版本这个数值还不一样。有些朋友提到升级版本可以解决问题。我也尝试了,问题并没有解决。

解决方案

其实这个问题处理起来也挺奇葩,只要给json加减一个属性,不要碰到它的那个限制就没有问题了。
当年翻看到这篇文章,那么我想跟说得是:欢迎入坑!!

fastjson实体转换异常问题相关推荐

  1. 【objectMapper实体转换异常】 com.fasterxml.jackson.databind.exc.MismatchedInputException

    大家好,我是烤鸭: 采坑实录,想把json数据直接转成对象,其中有个属性是list<T>: 异常 1 com.fasterxml.jackson.databind.exc.Mismatch ...

  2. java fastjson 泛型_解决fastjson泛型转换报错的解决方法

    错误信息 Exception in thread "main" java.lang.ClassCastException: com.alibaba.fastjson.JSONObj ...

  3. [M]MagicTable转换异常解决方法

    [M]MagicTable转换异常解决方法 参考文章: (1)[M]MagicTable转换异常解决方法 (2)https://www.cnblogs.com/yiyun/p/5259384.html ...

  4. java 实体属性个数_?Java中比较实用实体转换工具介绍

    ​Java中比较实用实体转换工具介绍 文中源码地址 大家一般编码过程中,经常会遇到DO对象转化为DTO对象,对象和对象之间转换一般需要用到转换工具,毕竟使用getter/setter太过麻烦 DO:D ...

  5. 一次线上Redis类转换异常排查引发的思考

    之前同事反馈说线上遇到Redis反序列化异常问题,异常如下: XxxClass1 cannot be cast to XxxClass2 已知信息如下: 该异常不是必现的,偶尔才会出现: 出现该异常后 ...

  6. Java 相同类型强制转换异常

    Java 相同类型强制转换异常 参考文章: (1)Java 相同类型强制转换异常 (2)https://www.cnblogs.com/LoveShare/p/11785056.html (3)htt ...

  7. 字符串类型日期时间转换为Date类型解析转换异常java.text.ParseException: Unparseable date: “2019-09-27T18:31:31+08:00”

    字符串类型日期时间转换为Date类型解析转换异常java.text.ParseException: Unparseable date: "2019-09-27T18:31:31+08:00& ...

  8. matlab从csv文件中读取时间转换异常

    matlab 从 csv 文件中读取时间转换异常 最近一段时间一直在研究 matlab 读取各种数据,自以为文件读取的水平还行.可是,昨天,帮朋友读取一个 csv 文件时,时间转换却让我感到非常奇怪. ...

  9. Android 中关与类转换异常的问题。

    下午做项目时,由于修改了一次布局,当我再次运行程序的时候,抛出异常ClassCastException 的类转换异常.我找了好半天,可是没找到原因.最后clean了下空间,没有异常了,在这里祭奠下我浪 ...

最新文章

  1. ARCGIS中某字段递增赋值
  2. 《因果科学周刊》第2期:如何解决混淆偏差?
  3. 成功的秘诀是什么_学习编码的10个成功秘诀
  4. 比ISA更简单的监管利器,谈谈关于公司上网监管的一点事儿
  5. LINUX环境:MySQL和Oracle开机自启动
  6. 【重点】LeetCode 146. LRU Cache
  7. Vista下调整硬盘分区大小的方法
  8. Spring的DI(Ioc) - 利用构造器注入
  9. vc ctabctrl页面切换事件_10191025一周PE/VC事件回顾|猿辅导获得10亿美元G2轮融资
  10. Hibernate错误记录
  11. 被众多车企“抛弃”、增长放缓,Mobileye值不值500亿美元?
  12. R语言—如何下载和使用包
  13. select2.js插件支持拼音搜索(最新版-4.0.6)
  14. PCB的作用及其包含的信息
  15. 我的世界空岛服务器修改地形,我的世界攻略秘籍 [WorldPainter制作空岛]—我有特别的地形技巧...
  16. 大数据告诉您:采用IT人才外包的优势
  17. win 桌面图标小箭头
  18. 解决WIN10“系统和压缩内存”“ntoskrnl.exe”系统空闲时占用大量CPU
  19. 金蝶生成凭证模板_金蝶精斗云产品的优势
  20. 深度学习(PyTorch)——librosa库的使用

热门文章

  1. 蚂蚁金服ATEC技术探索大会造访伦敦,只为讲好一个普惠金融愿景
  2. 3D空间转换(位移、旋转、立体呈现)
  3. 在ns2.35下完成柯老师lab18实验
  4. 前端项目如何部署到服务器实现网址访问
  5. 华为鸿蒙系统支持什么手机_华为鸿蒙os2.0系统支持手机 华为鸿蒙os2.0系统支持哪些型号升级...
  6. liquibase mysql_liquibase使用教程
  7. Java求三个数的最小公倍数算法改进(化境)
  8. php 找回密码机制流程
  9. springmvc使用细节
  10. php实现微信签到功能实现,微信小程序实现签到的日历功能