fastjson报Illegal target of jump or branch


完整报错信息如下:

nested exception is java.lang.VerifyError: (class: com/alibaba/fastjson/parser/deserializer/FastjsonASMDeserializer_3_TianyanchaMainObject, method: deserialze signature: (Lcom/alibaba/fastjson/parser/DefaultJSONParser;Ljava/lang/reflect/Type;Ljava/lang/Object;I)Ljava/lang/Object;) Illegal target of jump or branch
at org.springframework.web.servlet.DispatcherServlet.triggerAfterCompletionWithError(DispatcherServlet.java:1260)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:939)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:851)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:953)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:844)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:620)

本地测试没有问题、部署到生产出现问题。

本地:fastjson版本1.2.6、jdk版本1.7.51

生产:fastjson版本1.2.73(因漏洞问题升级到最新)、jdk版本1.7.45。

网上查询的信息都是fastjson解析的数量问题.Fastjson1.2.28版本下,在json反序列化的时候,当字段数量为32或者64时,会反序列化报错。

实际字段数量是由71升级到75后出现的错误。尝试改到74个还是报错。排除数量问题。

怀疑是fastjson版本问题,不过网上查询说是fastjson1.2.73版本向下兼容5、6、7。尝试把本地升级到1.2.73,果然出错。

maven库中找到打漏洞补丁的低版本1.2.7.sec10。替换后问题解决。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM