You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by BugRat Mail System <to...@cortexity.com> on 2000/11/06 00:41:20 UTC

BugRat Report #345 has been filed.

Bug report #345 has just been filed.

You can view the report at the following URL:

   <http://znutar.cortexity.com:8888/BugRatViewer/ShowReport/345>

REPORT #345 Details.

Project: Tomcat
Category: Bug Report
SubCategory: New Bug Report
Class: swbug
State: received
Priority: high
Severity: serious
Confidence: public
Environment: 
   Release: 3.1
   JVM Release: jdk1.3
   Operating System: NT
   OS Release: 4
   Platform: NT

Synopsis: 
<jsp:include> does not handle expressions correctly

Description:
When <jsp:include> is used with an expression evaluation
as the page attribut, e.g.

<jsp:include page="<%=request.getAttribute("X")%>" />

to include a file that has either .html or .jsp as 
extension, an IllegalStateException is thrown.

I guess that with these file types the 
org.apache.tomcat.servlets.DefaultServlet, that
gets called to get the file, calls some method 
that pertains to the http header or somethiong
which would give this exception as include
always flushes before the new file starts.

Here is the exception I get

java.lang.IllegalStateException: Response has already been committed
	at org.apache.tomcat.core.HttpServletResponseFacade.sendError(HttpServletResponseFacade.java:157)
	at org.apache.tomcat.servlets.DefaultServlet.serveFile(DefaultServlet.java:325)
	at org.apache.tomcat.servlets.DefaultServlet.doGet(DefaultServlet.java:218)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
	at org.apache.tomcat.core.RequestDispatcherImpl.include(RequestDispatcherImpl.java:262)
	at org.apache.jasper.runtime.PageContextImpl.include(PageContextImpl.java:350)
	at content._0002fcontent_0002fBasicView_0002ejspBasicView_jsp_0._jspService(_0002fcontent_0002fBasicView_0002ejspBasicView_jsp_0.java:64)
	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:126)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.apache.jasper.runtime.JspServlet$JspServletWrapper.service(JspServlet.java:174)
	at org.apache.jasper.runtime.JspServlet.serviceJspFile(JspServlet.java:261)
	at org.apache.jasper.runtime.JspServlet.service(JspServlet.java:369)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
	at org.apache.tomcat.core.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:163)
	at com.pipebeach.partnersite.PartnerSiteServlet.doGet(PartnerSiteServlet.java:37)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
	at org.apache.tomcat.core.ServletWrapper.handleRequest(ServletWrapper.java:503)
	at org.apache.tomcat.core.ContextManager.service(ContextManager.java:559)
	at org.apache.tomcat.service.http.HttpConnectionHandler.processConnection(HttpConnectionHandler.java:160)
	at org.apache.tomcat.service.TcpConnectionThread.run(SimpleTcpEndpoint.java:338)
	at java.lang.Thread.run(Unknown Source)