PQ52480: JSP'S PAGECONTEXT.INCLUDE() IS NOT FLUSHING THE OUTPUT PROPERLY

APAR status
Closed as program error.

Error description
Customer is using JSPWrite under JSP 1.1 and the compiler
is not flushing the buffer according to the JSP specification.
Example JSP using this method, followed by the expected result
and the actual result respectively:
-------JSP3.jsp-------
 <HTML>
 <TITLE>JSP3.JSP</TITLE>
 <BR>
 Hello Everybody!<BR>
 This is page:  JSP34.jsp<BR>
 <%
     out.println("This line should have flushed before
 include!");
     pageContext.include("/JSP4.jsp");
     //getServletContext().getRequestDispatcher
 ("/JSP4.jsp").include(request, response);
 //<%@ include file="JSP4.jsp" %>
 %>
 </HTML>
--------End of JSP3.jsp-----------
--------Start of JSP4.jsp----------
<HTML>
 <TITLE>JSP4.JSP</TITLE>
 <%
    // out.flush();
     Thread.sleep(60000);
%>
 <BR>
 Hello Everybody!<BR>
 This is page: JSP44.jsp<BR>
 </HTML>
----------End of JSP4.jsp---------
---------Start of expected result page on browser---------
 Hello Everybody!
 This is page: JSP34.jsp
 This line should have flushed before include!
 .
 Hello Everybody!
 This is page: JSP44.jsp
---------End of expected result page on browser------------
*It is expected that there be some time delay between  *
*the rendering of th eoutput from JSP3.jsp and JSP4.jsp*
------Start of actual output------------
 Hello Everybody!
 This is page: JSP44.jsp
 .
 Hello Everybody!
 This is page: JSP34.jsp
 This line should have flushed before include! %>
-------End of actual output-----------
*Note that the actual output comes as one chunk of data   *
*instead of two chunks first from JSP3 and then from JSP4.*
.
Ref: WAS 3.5 APAR PQ48079  CMVC defect 107171
Local fix Problem summary
****************************************************************
* USERS AFFECTED: Users of WebSphere Application Server 4.0.1  *
*                 jsp and taglibs                              *
****************************************************************
* PROBLEM DESCRIPTION: Customer is using JSPWriter under JSP   *
*                      1.1 and the compiler is not flushing    *
*                      the buffer according to the JSP         *
*                      specification when using                *
*                      PageContext.include().                  *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
pageContext.include was not flushing the outputstream prior
to including to another resource.
This was causing output to appear out of order.
Problem conclusion
Implemented flushing output stream when pageContext.include()
is called from within a jsp.
Temporary fix Comments
APAR information
APAR number PQ52480
Reported component name WEBSPHERE AE NT
Reported component ID 5630A2201
Reported release 400
Status CLOSED PER
PE NoPE
HIPER NoHIPER
Submitted date 2001-09-17
Closed date 2001-09-18
Last modified date 2001-09-18

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Modules/Macros

Fix information
Fixed component name WEBSPHERE AE NT
Fixed component ID 5630A2201

Applicable component levels
R400 PSY    UP


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > General
Operating system(s):
Software version: 400
Software edition:
Reference #: PQ52480
IBM Group: Software Group
Modified date: Sep 18, 2001