Tomcat now throws javax.servlet.jsp.JspTagException: Unable to get RequestDispatcher for Context after update to 7.0.59

825 Views Asked by At

I'm running the stock Java and Tomcat from the Fedora 21 distro, which has been working fine with my apps until the Tomcat 7.0.59 update came down recently. Now setting crossContext="true" does not prevent a fatal exception being thrown, which is the exception one would normally see if one had set crossContext="false". Here's the Tomcat version:

Server version: Apache Tomcat/7.0.59
Server built:   Feb 14 2015 21:28:39 UTC
Server number:  7.0.59.0
OS Name:        Linux
OS Version:     3.18.9-200.fc21.x86_64
Architecture:   amd64
JVM Version:    1.8.0_40-b25
JVM Vendor:     Oracle Corporation

And here's the exception being thrown:

javax.servlet.jsp.JspTagException: Unable to get RequestDispatcher for
Context: "/" and URL: 
"/calendar.jsp?nid=0&pid=185&layoutpane_id=7&cid=276&accessuser=".
Verify values and/or enable cross context access.

Any ideas? There seems to have been work on cross-context request dispatching in recent Tomcat versions, but I can't find anything that addresses this specifically. Here's the full exception trace:

javax.servlet.jsp.JspTagException: Unable to get RequestDispatcher for Context: "/" 
and URL: "/calendar.jsp?nid=0&pid=185&layoutpane_id=7&cid=276&accessuser=".
Verify values and/or enable cross context access. 
org.apache.taglibs.standard.tag.common.core.ImportSupport.acquireString(ImportSupport.java:278) 
org.apache.taglibs.standard.tag.common.core.ImportSupport.doEndTag(ImportSupport.java:161)
org.apache.jsp.index_jsp._jspService(index_jsp.java:3021) 
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:727) 
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:395) 
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:339) 
javax.servlet.http.HttpServlet.service(HttpServlet.java:727) 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303) 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241) 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208) 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:221) 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122) 
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:504) 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170) 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103) 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116) 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:421) 
org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:190) 
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611) 
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:314) 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
java.lang.Thread.run(Thread.java:745)
0

There are 0 best solutions below