描述

解决思路

(1)第一步:可以看到信息中主要是Exception描述:
他描述23行处理出问题,23行是调用tag文件,也就是tag文件的处理出了问题。
(2)然后第二步,看root cause。可以看到最顶部提到ArrayList cannot be cast to String。
这就是关键,问题在哪里就靠这句话。
(3)最终定位问题是tag文件中不使用request设置attribute,而我使用了这个。这是一个问题。另一个问题是variable默认是返回String,但是我要返回ArrayList,没有做相应的设置,最终出现这个结果。修改后问题解决。
variable默认返回类型如下修改:

后言

解决这个问题用了将近1.5个小时,还是对tag文件的使用不够熟练。
出现问题后,先在代码里加system.out.println确定哪部分没执行。
然后,使用debug观察变量的变化情况,以及语句执行情况,发现数据库可以连接,也可以查询出来结果,但是始终有上图的错误说是ArrayList不能转String。从这里出发逐个排查问题,但是就是在认知范围里代码是正确的,为什么不行呢?没办法了去找书吧,打开jsp的课本翻到tag那一节。
恍然大悟,有一句话“Tag文件将对象的名字及其引用存储到jspContext中,JSP页面才可以使用该对象。”怪不得我在排查问题中发现设置到request的attribute中的值,输出的是null。然后接着往下读,variable默认返回的是String类型,而我要返回的是ArrayList,正是上面的问题信息,至此,问题得解。这也是书籍一个重要作用之一吧。。

jsp实验中:tag文件报java.util.ArrayList cannot be cast to java.lang.String相关推荐

  1. java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map

    1.错误描写叙述 java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Mapat service ...

  2. 已解决java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map异常的正确解决方法,亲测有效!!

    已解决java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map异常的正确解决方法,亲测有效!! ...

  3. 记录---ClassCastException: java.util.Date cannot be cast to java.sql.Date报错解决方法

    记录-ClassCastException: java.util.Date cannot be cast to java.sql.Date报错解决方法 先po代码: //1.读取配置文件中的基本信息I ...

  4. java.util.Date cannot be cast to java.sql.Date Date类型转换

    java.util.Date cannot be cast to java.sql.Date 将java程序中常用的java.util.Date类型转换为sql语句中用的sql类型的Date: new ...

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

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

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

    问题代码: public Object getAjpc(ScreenDto screenDto) {String cgyBh = screenDto.getCgyBh();RestTemplate r ...

  7. eclipse中js文件报missing semicolon

    eclipse中js文件报missing semicolon missing semicolon的字面意思是"丢失分号",是eclipse对js的检查时发现js文件缺少分号而报的错 ...

  8. java string 反序列化_无法反序列化VALUE_STRING中的java.util.ArrayList实例

    我有一个使用Jersey构建并部署在AppEngine中的REST服务.REST服务实现使用application/json媒体类型的动词PUT .数据绑定由Jackson进行. 该动词使用JSON中 ...

  9. 解决springmvc报No converter found for return value of type: class java.util.ArrayList问题

    解决springmvc报No converter found for return value of type: class java.util.ArrayList问题 参考文章: (1)解决spri ...

最新文章

  1. SAP QM 物料主数据QM视图里字段MARC-INSMK的更新
  2. Xamarin XAML语言教程Xamarin.Forms中改变活动指示器颜色
  3. 白话uni-app 【也是html、vue、小程序的区别】
  4. java层 android_Android开发实践:Java层与Jni层的数组传递
  5. Android四大组件之BroadCast(续)
  6. 最速下降法matlab全局最小值_梯度下降概念
  7. python时域信号特征提取(各种因子)
  8. linux ubuntu u盘 dd,ubuntu安装到U盘--kvm+dd 定制篇
  9. matlab与STK互联(不使用connect软件的互联)
  10. 易语言学习笔记(一)
  11. [2019杭电多校第六场][hdu6638]Snowy Smile(维护区间最大子段和)
  12. python蒙特卡洛仿真_蒙特卡洛模拟Ising模型(附Python代码)
  13. 【Javassist官方文档翻译】第一章 读写字节码
  14. wireshark win7无响应
  15. pytorch模型加密
  16. 技术牛人---章文嵩博士---做系统要先了解业务的需求
  17. vue $confirm 自定义图标及修改图标颜色
  18. 天津大学计算机学院考研复试名单,天津大学计算机学院09考研复试第一批名单...
  19. 关于JavaScript的模块(CommonJS, AMD, CMD, ES6模块)的理解
  20. 免费的css模板下载

热门文章

  1. AutoCAD2012安装失败解决办法,Failed Installation aborted, Res
  2. DEFCON 23即将展开物联网“大屠杀”
  3. 分支-07. 比较大小(10)
  4. NataApp连接不上
  5. Compilation failure:错误: 找不到符号
  6. C#   格式化XML方法
  7. XML格式化在线工具
  8. MYSQL数据库导出和备份----mysqldump
  9. 新一代三维GIS技术体系再升维
  10. u盘正常接入后计算机无法看到,U盘连接到电脑之后,电脑无反应怎么办?