解决JSTL foEach标签 刷新报错的方法

本篇文章是对JSTL foEach标签刷新报错的方法进行了详细的分析介绍,需要的朋友参考下

修改JSP,刷新一下JSP结果就报错,错误如下:

复制代码 代码如下:

严重: Servlet.service() for servlet jsp threw exception

 java.lang.NoSuchFieldError: deferredExpression

     at org.apache.taglibs.standard.tag.common.core.ForEachSupport.release(ForEachSupport.java:178)

     at org.apache.jasper.runtime.TagHandlerPool.release(TagHandlerPool.java:166)

     at org.apache.jsp.portal_jsp._jspDestroy(portal_jsp.java:35)

     at org.apache.jasper.runtime.HttpJspBase.destroy(HttpJspBase.java:61)

     at org.apache.jasper.servlet.JspServletWrapper.destroy(JspServletWrapper.java:439)

     at org.apache.jasper.servlet.JspServletWrapper.getServlet(JspServletWrapper.java:144)

     at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:340)

     at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)

     at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)

     at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)

     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)

     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

     at org.apache.catalina.core.Applicationdispatcher.invoke(Applicationdispatcher.java:646)

     at org.apache.catalina.core.Applicationdispatcher.processRequest(Applicationdispatcher.java:436)

     at org.apache.catalina.core.Applicationdispatcher.doForward(Applicationdispatcher.java:374)

     at org.apache.catalina.core.Applicationdispatcher.forward(Applicationdispatcher.java:302)

     at org.apache.struts2.dispatcher.ServletdispatcherResult.doExecute(ServletdispatcherResult.java:140)

     at org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)

     at com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:355)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:259)

     at com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:141)

     at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:248)

     at org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:49)

     at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:124)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:170)

     at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:170)

     at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:104)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at org.apache.struts2.interceptor.CheckBoxInterceptor.intercept(CheckBoxInterceptor.java:84)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:208)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:88)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:127)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at org.apache.struts2.interceptor.ProfilingActivationInterceptor.intercept(ProfilingActivationInterceptor.java:104)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:267)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:130)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:143)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:137)

     at com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:86)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:130)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:176)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:230)

     at com.opensymphony.xwork2.DefaultActionInvocation$1.doProfiling(DefaultActionInvocation.java:229)

     at com.opensymphony.xwork2.util.profiling.UtilTimerStack.profile(UtilTimerStack.java:456)

     at com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:227)

     at org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:52)

     at org.apache.struts2.dispatcher.dispatcher.serviceAction(dispatcher.java:477)

     at org.apache.struts2.dispatcher.Filterdispatcher.doFilter(Filterdispatcher.java:467)

     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

     at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)

     at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)

     at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)

     at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)

     at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)

     at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)

     at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)

     at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)

     at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)

     at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)

     at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)

     at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:602)

     at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)

     at java.lang.Thread.run(Thread.java:619)

原因是web-inf lib下有多个jstl jar包的原因 删除一个重新启动 一切ok !

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...