You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by bu...@apache.org on 2004/07/22 23:30:25 UTC
DO NOT REPLY [Bug 30274] New: -
Servlet.service() for servlet jsp threw exception
Servlet.service() for servlet jsp threw exception java.lang.ClassCastException
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://issues.apache.org/bugzilla/show_bug.cgi?id=30274>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://issues.apache.org/bugzilla/show_bug.cgi?id=30274
Servlet.service() for servlet jsp threw exception
Servlet.service() for servlet jsp threw exception java.lang.ClassCastException
Summary: Servlet.service() for servlet jsp threw exception
Servlet.service() for servlet jsp threw exception
java.lang.ClassCastException
Product: Tomcat 5
Version: 5.0.18
Platform: PC
OS/Version: Linux
Status: NEW
Severity: Major
Priority: Other
Component: Catalina
AssignedTo: tomcat-dev@jakarta.apache.org
ReportedBy: pve@casd.cz
A my javax.servlet.Filter implemtation threw java.lang.ClassCastException on the
line marked by ">>>>>>".
-------------------------------------------------------------------------------
This is the doFilter method implementation:
-------------------------------------------------------------------------------
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest req = (HttpServletRequest)request;
String type = req.getHeader("Content-Type");
// If this is not a multipart/form-data request continue
if (type == null || !type.startsWith("multipart/form-data")) {
chain.doFilter(request, response);
}
else {
HttpSession session = ((HttpServletRequest)request).getSession();
dir = (String)session.getAttribute("target");
if ((dir == null) || ("".equals(dir))) {
throw new ServletException("Invalid target dir.");
}
MultipartWrapper multi = new MultipartWrapper(req, dir);
System.err.println("Is multi instance of ServletRequest? " + (multi
instanceof ServletRequest));
System.err.println("Is response instance of ServletResponse? " +
(response instanceof ServletResponse));
System.err.println("Multi class is " + multi.getClass().getName());
System.err.println("Response class is " +
response.getClass().getName());
/*>>>>>>*/ chain.doFilter(multi, response);
}
}
This is debug output produced by "System.err.println..." lines:
---------------------------------------------------------------
Is multi instance of ServletRequest? true
Is response instance of ServletResponse? true
Multi class is com.oreilly.servlet.MultipartWrapper
Response class is org.apache.coyote.tomcat5.CoyoteResponseFacade
This the result in log:
-----------------------
2004-07-22 23:17:43 StandardContext[/manager]Manager: start: Starting web
application at '/wfs'
2004-07-22 23:18:25 StandardWrapperValve[jsp]: Servlet.service() for servlet jsp
threw exception
java.lang.ClassCastException
at org.apache.jsp.upload_jsp._jspService(upload_jsp.java:47)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:284)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
at cz.pve.fs.MultipartFilter.doFilter(MultipartFilter.java:61)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:233)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:204)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:257)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
at
org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:245)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:199)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:184)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:164)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:149)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:156)
at
org.apache.catalina.core.StandardValveContext.invokeNext(StandardValveContext.java:151)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:567)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:972)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:206)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:833)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:732)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:619)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:688)
at java.lang.Thread.run(Thread.java:534)
---------------------------------------------------------------------
To unsubscribe, e-mail: tomcat-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tomcat-dev-help@jakarta.apache.org