问题代码:

public Object getAjpc(ScreenDto screenDto) {String cgyBh = screenDto.getCgyBh();RestTemplate restTemplate = new RestTemplate();String CGYUrl = baseUrl+"api/v1/cgy?cgyBh={cgyBh}";JSONArray jsonArr = new JSONArray();List<JcVO> jcVOList = restTemplate.getForObject(CGYUrl, ArrayList.class, cgyBh);......
}

异常原因:

在使用RestTemplate调用服务的时候,因为服务提供者返回的是一个List集合,所以期待返回类型写成ArrayList.class,
就报了java.util.LinkedHashMap cannot be cast to…这个异常,
但是调用过程中数据类型的变化是:服务提供者返回的是LIst集合,但是标记了@RequestBody,
所以返回的时候会把List集合转变成json的形式(内部是jackjson技术支持的),
像下面这种写法,

//        List<JcVO> jcVOList = restTemplate.getForObject(CGYUrl, ArrayList.class, cgybh);

就会再把提供者返回的json转变成list,
但是这个list跟之前不一样, (一个是jackjson转变的,一个是restTemplate转变的,可能内部机制不一样),
所以遍历集合就会报上面的异常.

改进方法:

接受一个json字符串,再使用阿里巴巴的fastjson将json字符串转变成list集合,

         String jsonTemp = restTemplate.getForObject(CGYUrl, String.class, cgyBh);List<JcVO> jcVOList = JSON.parseArray(jsonTemp, JcVO.class);

此文章本人原创,如有问题底部留言,如有转载请标明出处。
--HurryChen

                         Happy   Coding!*\( ^ v ^ )/*

【SpringCloud后端项目报错】java.util.LinkedHashMap cannot be cast to…异常处理相关推荐

  1. 多种方式解决Java控制台报错 java.util.LinkedHashMap cannot be cast to.....

    问题描述 今天在使用RestTemplate调用服务的时候,因为服务提供者返回的是一个List集合,所以在使用消费者调用的时候,restTemplate.getForObject()期待返回的类型直接 ...

  2. java.util.LinkedHashMap cannot be cast to xxx

    java.util.LinkedHashMap cannot be cast to com.entity.Person 使用mybatis, resultMap映射的是实体类Person, 查询出来的 ...

  3. java.util.LinkedHashMap cannot be cast to Entity

    前后端数据传输转换问题-java.util.LinkedHashMap cannot be cast to Entity 问题场景:项目前端使用json传输方式,后台接收后对象变成了LinkedHas ...

  4. java.util.LinkedHashMap cannot be cast to 问题

    今天在做项目时候出现 java.util.LinkedHashMap cannot be cast to xxx 异常.在此记录. 问题背景: 通过RestTemplate调用另一个服务接口,获取Li ...

  5. 解决java.util.LinkedHashMap cannot be cast to…

    此方法用于 解决前端传回list类型后端接收时参数类型发生改变 运行的时候,在遍历的时候,就报了java.util.LinkedHashMap cannot be cast to-这个异常 具体原因不 ...

  6. 关于java.util.LinkedHashMap cannot be cast to 实体类......问题的出现以及解决办法

    在使用RestTemplate调用服务的时候,因为服务提供者返回的是一个List集合,所以在使用消费者调用的时候,restTemplate.getForObject()期待返回的类型直接写成了List ...

  7. maven引用servlet_解决Maven 项目报错 java.httpservlet和synchronized使用方法

    使用java8 的lanmbe表达式时,使用java1.8编译,则会报错 需要在pom.xml的中添加 org.apache.maven.plugins maven-compiler-plugin 2 ...

  8. 首次使用eclipes运行项目报错“Java.lang.ClassNotFoundException”

    首次使用eclipes运行项目报错"Java.lang.ClassNotFoundException" 运行项目时提示: 解决方法: 1.点击菜单-Project-Build Au ...

  9. Poi读取Excle报错 java.util.zip.ZipException: invalid stored block lengths

    一:Poi读取Excle报错  java.util.zip.ZipException: invalid stored block lengths 系统中需要导出excle签收单,excle模板是预设好 ...

最新文章

  1. mass Framework emitter模块
  2. c++ c6386 缓冲区 溢出_Office 远程溢出漏洞测试与分析
  3. 【收藏】vuejs学习笔记github地址
  4. NeurIPS 2020 | 基于“单目标域样本”的领域自适应方法
  5. idea jdk编译报错解决办法
  6. C++新经典——C++从入门到精通
  7. linux网卡备份还原,CentOS6.x双网卡采用主-备份策略绑定(bond)
  8. win8计算机无法安装打印机驱动程序,win8.1安装打印机驱动的方法 惠普打印机驱动程序安装教程...
  9. 分布式光纤管道泄漏监测系统管道泄漏检测技术分析
  10. Chrome插件(UserScript)开发教程
  11. ftp免费空间,1种适合小白级别的搭建ftp免费空间的方法
  12. 论文-Interactive Path Reasoning on Graph for Conversational Recommendation
  13. IJCAI 2022|边界引导的伪装目标检测模型BGNet
  14. TestCenter Layer4-7分析
  15. verilog中pullup和pulldown的用法
  16. python 几何教学_GEE学习笔记 八十三:【GEE之Python版教程十三】几何图形
  17. 【Android安全】Soot 静态分析教程
  18. 从零到一编写一个 spark 程序并提交到集群中运行
  19. 免费抽奖 | 《阿巴豆》探索未来系列盲盒数字版权作品全网首发!
  20. 捐赠 200 亿美元,比尔·盖茨势要退出世界富豪榜!

热门文章

  1. Unity UI -- (7) 创建世界空间UI
  2. 第1讲:SAS基本介绍
  3. lass path resource [com/spring/] cannot be resolved to URL because it does not
  4. 三维人脸实践:基于Face3D的人脸生成、渲染与三维重建 <二>
  5. 即刻了解血压血糖动态,健康数据轻松掌握,dido E55PROMAX体验
  6. 面试官:今日头条启动很快,你觉得可能是做了哪些优化?
  7. 使用TCP协议连续传输大量数据时,是否会丢包,应如何避免
  8. 1.11 04:网线主管
  9. 游戏角色配音找对团队的重要性
  10. 【人脸识别实战二】服务器端设计与实现