jsp实验中:tag文件报java.util.ArrayList cannot be cast to java.lang.String
描述
解决思路
(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相关推荐
- 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 ...
- 已解决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异常的正确解决方法,亲测有效!! ...
- 记录---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 ...
- 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 ...
- 多种方式解决Java控制台报错 java.util.LinkedHashMap cannot be cast to.....
问题描述 今天在使用RestTemplate调用服务的时候,因为服务提供者返回的是一个List集合,所以在使用消费者调用的时候,restTemplate.getForObject()期待返回的类型直接 ...
- 【SpringCloud后端项目报错】java.util.LinkedHashMap cannot be cast to…异常处理
问题代码: public Object getAjpc(ScreenDto screenDto) {String cgyBh = screenDto.getCgyBh();RestTemplate r ...
- eclipse中js文件报missing semicolon
eclipse中js文件报missing semicolon missing semicolon的字面意思是"丢失分号",是eclipse对js的检查时发现js文件缺少分号而报的错 ...
- java string 反序列化_无法反序列化VALUE_STRING中的java.util.ArrayList实例
我有一个使用Jersey构建并部署在AppEngine中的REST服务.REST服务实现使用application/json媒体类型的动词PUT .数据绑定由Jackson进行. 该动词使用JSON中 ...
- 解决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 ...
最新文章
- SAP QM 物料主数据QM视图里字段MARC-INSMK的更新
- Xamarin XAML语言教程Xamarin.Forms中改变活动指示器颜色
- 白话uni-app 【也是html、vue、小程序的区别】
- java层 android_Android开发实践:Java层与Jni层的数组传递
- Android四大组件之BroadCast(续)
- 最速下降法matlab全局最小值_梯度下降概念
- python时域信号特征提取(各种因子)
- linux ubuntu u盘 dd,ubuntu安装到U盘--kvm+dd 定制篇
- matlab与STK互联(不使用connect软件的互联)
- 易语言学习笔记(一)
- [2019杭电多校第六场][hdu6638]Snowy Smile(维护区间最大子段和)
- python蒙特卡洛仿真_蒙特卡洛模拟Ising模型(附Python代码)
- 【Javassist官方文档翻译】第一章 读写字节码
- wireshark win7无响应
- pytorch模型加密
- 技术牛人---章文嵩博士---做系统要先了解业务的需求
- vue $confirm 自定义图标及修改图标颜色
- 天津大学计算机学院考研复试名单,天津大学计算机学院09考研复试第一批名单...
- 关于JavaScript的模块(CommonJS, AMD, CMD, ES6模块)的理解
- 免费的css模板下载
热门文章
- AutoCAD2012安装失败解决办法,Failed Installation aborted, Res
- DEFCON 23即将展开物联网“大屠杀”
- 分支-07. 比较大小(10)
- NataApp连接不上
- Compilation failure:错误: 找不到符号
- C# 格式化XML方法
- XML格式化在线工具
- MYSQL数据库导出和备份----mysqldump
- 新一代三维GIS技术体系再升维
- u盘正常接入后计算机无法看到,U盘连接到电脑之后,电脑无反应怎么办?