[ 
https://issues.apache.org/struts/browse/STR-3079?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_41642
 ] 

Paul Benedict commented on STR-3079:
------------------------------------

It appears your problem is the inclusion of the javaee.jar. There's no reason 
to include this in your servlet container because many of the APIs are already 
provided by the Tomcat container. This is probably why you're getting 
AbstractMethodErrors because of incompatible versions. Delete that library. If 
you need additional APIs from the JEE spec, you need to install only the 
libraries you need.

> Version 1.3.8 breaks JSP/JSTL core taglib 'forEach' loops
> ---------------------------------------------------------
>
>                 Key: STR-3079
>                 URL: https://issues.apache.org/struts/browse/STR-3079
>             Project: Struts 1
>          Issue Type: Bug
>          Components: Taglibs
>    Affects Versions: 1.3.8
>         Environment: Windows XP Struts/JSP application running in Tomcat 5.5 
> web container
>            Reporter: Robert Garverick
>
> After I upgraded my Struts/JSP application from Struts 1.2 to Struts 1.3.8 
> (following directions in 
> http://wiki.apache.org/struts/StrutsUpgradeNotes12to13) the JSTL core taglib 
> 'forEach' loops in my JSP pages will no longer compile under Tomcat (see 
> exceptions below).  Since the outdated JSTL version 1.0.2 Jar files delivered 
> in the Struts 1.3.8 download (jstl-1.0.2.jar and standard-1.0.2.jar) 
> completely killed my JSP application since they don't even support expression 
> language, I replaced them with the same JSTL 1.1 Jar files from J2EE 5 
> (appserv-jstl.jar and javaee.jar) that I used successfully under Struts 1.2.  
> Under JSTL 1.1, all of my Struts taglib functions and JSTL taglib functions 
> work fine except for the JSTL core 'forEach' tag.  (I also tried newer JSTL 
> Jar files from J2EE 5 update 2 and got the same results).  I realize that 
> this seems more like a JSTL than a Struts bug, but the only variable seems to 
> be the Struts upgrade.
> Following are the first two of the series of exception messages I get the 
> first time a JSP page containing a 'forEach' loop is invoked and Tomcat 
> attempts to compile it to a servlet:
> Jul 22, 2007 7:36:46 AM org.apache.catalina.core.ApplicationDispatcher invoke
> SEVERE: Servlet.service() for servlet jsp threw exception
> java.lang.AbstractMethodError: 
> javax.servlet.jsp.PageContext.getELContext()Ljavax/el/ELContext;
>       at 
> javax.servlet.jsp.jstl.core.LoopTagSupport.unExposeVariables(LoopTagSupport.java:587)
>       at 
> javax.servlet.jsp.jstl.core.LoopTagSupport.doFinally(LoopTagSupport.java:323)
>       at 
> org.apache.jsp.pages.welcome_jsp._jspx_meth_c_forEach_0(welcome_jsp.java:237)
>       at org.apache.jsp.pages.welcome_jsp._jspService(welcome_jsp.java:125)
>       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
>       at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
>       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
>       at 
> org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:966)
>       at 
> org.apache.jasper.runtime.PageContextImpl.doInclude(PageContextImpl.java:643)
>       at 
> org.apache.jasper.runtime.PageContextImpl.include(PageContextImpl.java:637)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>       at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>       at java.lang.reflect.Method.invoke(Unknown Source)
>       at 
> org.apache.struts.tiles.TilesUtilImpl.doInclude(TilesUtilImpl.java:129)
>       at org.apache.struts.tiles.TilesUtil.doInclude(TilesUtil.java:152)
>       at 
> org.apache.struts.tiles.taglib.InsertTag.doInclude(InsertTag.java:764)
>       at 
> org.apache.struts.tiles.taglib.InsertTag$InsertHandler.doEndTag(InsertTag.java:896)
>       at org.apache.struts.tiles.taglib.InsertTag.doEndTag(InsertTag.java:465)
>       at 
> org.apache.jsp.pages.layouts.mainLayout_jsp._jspx_meth_tiles_insert_2(mainLayout_jsp.java:370)
>       at 
> org.apache.jsp.pages.layouts.mainLayout_jsp._jspx_meth_html_html_0(mainLayout_jsp.java:222)
>       at 
> org.apache.jsp.pages.layouts.mainLayout_jsp._jspService(mainLayout_jsp.java:148)
>       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
>       at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
>       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
>       at 
> org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:966)
>       at 
> org.apache.jasper.runtime.PageContextImpl.doInclude(PageContextImpl.java:643)
>       at 
> org.apache.jasper.runtime.PageContextImpl.include(PageContextImpl.java:637)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>       at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>       at java.lang.reflect.Method.invoke(Unknown Source)
>       at 
> org.apache.struts.tiles.TilesUtilImpl.doInclude(TilesUtilImpl.java:129)
>       at org.apache.struts.tiles.TilesUtil.doInclude(TilesUtil.java:152)
>       at 
> org.apache.struts.tiles.taglib.InsertTag.doInclude(InsertTag.java:764)
>       at 
> org.apache.struts.tiles.taglib.InsertTag$InsertHandler.doEndTag(InsertTag.java:896)
>       at org.apache.struts.tiles.taglib.InsertTag.doEndTag(InsertTag.java:465)
>       at 
> org.apache.jsp.index_jsp._jspx_meth_tiles_insert_0(index_jsp.java:132)
>       at org.apache.jsp.index_jsp._jspService(index_jsp.java:106)
>       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
>       at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
>       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>       at 
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>       at 
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>       at 
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>       at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>       at java.lang.Thread.run(Unknown Source)
> Jul 22, 2007 7:36:46 AM org.apache.catalina.core.ApplicationDispatcher invoke
> SEVERE: Servlet.service() for servlet jsp threw exception
> java.lang.AbstractMethodError: 
> javax.servlet.jsp.PageContext.getELContext()Ljavax/el/ELContext;
>       at 
> javax.servlet.jsp.jstl.core.LoopTagSupport.unExposeVariables(LoopTagSupport.java:587)
>       at 
> javax.servlet.jsp.jstl.core.LoopTagSupport.doFinally(LoopTagSupport.java:323)
>       at 
> org.apache.jsp.pages.welcome_jsp._jspx_meth_c_forEach_0(welcome_jsp.java:237)
>       at org.apache.jsp.pages.welcome_jsp._jspService(welcome_jsp.java:125)
>       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
>       at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
>       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
>       at 
> org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:966)
>       at 
> org.apache.jasper.runtime.PageContextImpl.include(PageContextImpl.java:614)
>       at 
> org.apache.struts.tiles.TilesUtilImpl.doInclude(TilesUtilImpl.java:138)
>       at org.apache.struts.tiles.TilesUtil.doInclude(TilesUtil.java:152)
>       at 
> org.apache.struts.tiles.taglib.InsertTag.doInclude(InsertTag.java:764)
>       at 
> org.apache.struts.tiles.taglib.InsertTag$InsertHandler.doEndTag(InsertTag.java:896)
>       at org.apache.struts.tiles.taglib.InsertTag.doEndTag(InsertTag.java:465)
>       at 
> org.apache.jsp.pages.layouts.mainLayout_jsp._jspx_meth_tiles_insert_2(mainLayout_jsp.java:370)
>       at 
> org.apache.jsp.pages.layouts.mainLayout_jsp._jspx_meth_html_html_0(mainLayout_jsp.java:222)
>       at 
> org.apache.jsp.pages.layouts.mainLayout_jsp._jspService(mainLayout_jsp.java:148)
>       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
>       at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
>       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:672)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:574)
>       at 
> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:499)
>       at 
> org.apache.jasper.runtime.JspRuntimeLibrary.include(JspRuntimeLibrary.java:966)
>       at 
> org.apache.jasper.runtime.PageContextImpl.doInclude(PageContextImpl.java:643)
>       at 
> org.apache.jasper.runtime.PageContextImpl.include(PageContextImpl.java:637)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
>       at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
>       at java.lang.reflect.Method.invoke(Unknown Source)
>       at 
> org.apache.struts.tiles.TilesUtilImpl.doInclude(TilesUtilImpl.java:129)
>       at org.apache.struts.tiles.TilesUtil.doInclude(TilesUtil.java:152)
>       at 
> org.apache.struts.tiles.taglib.InsertTag.doInclude(InsertTag.java:764)
>       at 
> org.apache.struts.tiles.taglib.InsertTag$InsertHandler.doEndTag(InsertTag.java:896)
>       at org.apache.struts.tiles.taglib.InsertTag.doEndTag(InsertTag.java:465)
>       at 
> org.apache.jsp.index_jsp._jspx_meth_tiles_insert_0(index_jsp.java:132)
>       at org.apache.jsp.index_jsp._jspService(index_jsp.java:106)
>       at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:332)
>       at 
> org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:314)
>       at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:264)
>       at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
>       at 
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
>       at 
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
>       at 
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
>       at 
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
>       at 
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>       at 
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
>       at 
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
>       at 
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
>       at 
> org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
>       at 
> org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
>       at 
> org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
>       at 
> org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
>       at java.lang.Thread.run(Unknown Source)
> Jul 22, 2007 7:36:46 AM 
> org.apache.struts.tiles.taglib.InsertTag$InsertHandler doEndTag

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to