当前位置:   article > 正文

Feign远程调用接口时报:Can not deserialize instance of java.util.ArrayList out of START_OBJECT token解决方案_json parse error: cannot deserialize instance of `

json parse error: cannot deserialize instance of `java.util.arraylist` out o

原因一,是远程客户端返回的数据类型与接收类型不一致。单数据类型无法返回复杂的数据类型。

这里的关键词是ArrayListSTART_OBJECT标记。您不能将单个对象反序列化为对象数组。试着理解这一点,你就会明白为什么。

您只能将一 JSON对象反序列化为一个数组或POJO集合。请注意,虽然JSON对象由{ }大括号分隔,但数组由[ ]括号分隔,其中包含一些对象。

因此,首先你先认真检查两个服务接口返回类型是否一致。我是因为这个原因,对方自己把接口改了,所以我不知道没检查,一直在纠结这个错误。因此写此博客目的:是提醒大家先检查数据对象类型是否一致,再去解决转换方式或把数据类型更改一直即可。

原因二,就是网上说的其他几个解决方案:这里就不叙述了,请看解决com.fasterxml.jackson.databind.JsonMappingException: No suitable 以 Jackson 处理复杂类型(List,map)两种方法_爱哭的小胖胖的博客-CSDN博客

                                                                                  以及错误分析:java - Jackson JsonMappingException: Can not deserialize instance - Stack Overflow

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/305370
推荐阅读
相关标签
  

闽ICP备14008679号