您的位置:首页 > 编程语言 > Java开发

jsp页面引入jstl标签后台报java.lang.ArrayIndexOutOfBoundsException

2017-01-08 21:07 956 查看
jsp引用了jstl的core标签和fmt标签,但访问jsp时后台报java.lang.ArrayIndexOutOfBoundsException,如下图所示:



花了很长时间上网查找原因也没有找到答案(最初以为是静态include和动态include问题,jstl标签不能重复包含或者是网上所说的jar包冲突问题,但后来新建项目,再将出错项目中所有jar包引入,并且每个jsp页面使用静态包含或者动态包含,结果后台不报错),同事将页面的js代码注释后,错误消失,经过一番周折后也没能找出具体冲突的js代码,原因很诡异(将js代码换行就报错),后来决定下载源码进行跟踪,抛异常的正是pull-parser-2.jar包,google了一下找到https://www.extreme.indiana.edu/xgws/xsoap/xpp/download/PullParser2/下载源码包PullParser2.1.10.tgz(PullParser2-old这个试了一下不行),将源码贴入项目中(里面有个别文件使用了enum作为变量报错,忽略掉),直接重新部署项目,访问,OK问题解决,不报错了,最后到http://www.findjar.com搜索pull-parser找到pull-parser-2.1.10.jar ,如果使用maven可以到mvn库中去下载该包。

结论:pull-parser-2.jar包存在bug,导致jstl标签与js代码(js使用了第三方js框架)有冲突,替换成最新的pull-parser-2.1.10.jar(或者不替换包将js代码放入js文件,使用script标签引入文件来解决)。


内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息