当前位置:编程学习 > JSP >>

java.lang.NoSuchFieldError: deferredExpression,改了jsp代码后,编译,然后访问就出现这个异常

严重: Servlet.service() for servlet jsp threw exception java.lang.NoSuchFieldError: deferredExpression at org.apache.taglibs.standard.tag.common.core.ForEachSupport.release(ForEachSupport.java:212) at org.apache.jasper.runtime.TagHandlerPool.release(TagHandlerPool.java:156) at org.apache.jsp.WEB_002dINF.page.user.index_jsp._jspDestroy(index_jsp.java:48) at org.apache.jasper.runtime.HttpJspBase.destroy(HttpJspBase.java:60) at org.apache.jasper.servlet.JspServletWrapper.destroy(JspServletWrapper.java:465) at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:156) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:356) at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390) at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:333) at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
追问:
无效,删除jar后直接报找不到class
那把jsp发上来,还有你改过什么地方,是不是改回去就不错了?
是改每一个用了jstl标签的jsp都会出现这个问题的
答案:jstl标签版本冲突

解决方案以及相关说明:
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>使用的是jstl.jar
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt"%>使用的是jstl-1.1.2.jar或jstl-1.2.jar
工程中使用的标签必须统一,只用一个jar包。发布后检查Tomcat中jar包是否只有一个。
其他:http://stackoverflow.com/questions/7837576/using-jstl-causes-deferredexpression-error-on-change

自己看一下

上一个:jsp中的javascript代码不执行。 ie6,windowx2003
下一个:为什么我的电脑运行部了带javabean的jsp文件,配置绝对正确,因为之前的简单代码都可以运行,

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,