PQ63677: JSP IOEXCEPTION INSIDE FINALLY BLOCK OF SERVICE METHOD AND BROKEN PIPE EXCEPTION.

 A fix is available

4.0.5: WebSphere Application Server Version 4.0 Fix Pack 5 (Version 4.0.5)



APAR status
Closed as program error.

Error description
When a JSP request cancelled during the page load using
the stop button from the browser, sometimes server throws
Servlet Error: Broken pipe: java.io.IOException:
Broken pipe.
This Patch handles possibility of an IOException inside of
the finally block of the service method of the jsp.
Local fix Problem summary
****************************************************************
* USERS AFFECTED: WebSphere Application Server developers      *
*                 using jsp's that generate large response     *
*                 data.                                        *
****************************************************************
* PROBLEM DESCRIPTION: IOExceptions (broken pipe) are thrown   *
*                      from the jspService method when user    *
*                      terminates the response prior to the    *
*                      completion of the data being            *
*                      written to the client.                  *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
When the jspService method is completed, WebSphere is
flushing the PrintWriter object inside of a finally
block of the jspService method.  At this point in time,
there is a possibility that the client may have terminated
the connection between the browser and the webserver. When
this termination occurs, an IOException would be thrown
signifying a Broken pipe.
Problem conclusion
Since developers do not have control of the flushing being
done in the finally block of the jspService, a try/catch
block was wrapped around this flush to prevent IOExceptions.
Developers still need to ensure that any flushing of the
PrintWriter is still handled by their code.  This fix
is a special case since the customers code has completed
executing by the time this out.flush() method call is made.
Temporary fix
//wasdoc0/pq63677/4.0.3/
Comments
APAR information
APAR number PQ63677
Reported component name WEBSPHERE AE AI
Reported component ID 5630A2200
Reported release 400
Status CLOSED PER
PE NoPE
HIPER NoHIPER
Submitted date 2002-07-30
Closed date 2002-08-07
Last modified date 2002-08-07

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Modules/Macros
JSP          

SRLS

Fix information
Fixed component name WEBSPHERE AE AI
Fixed component ID 5630A2200

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 #: PQ63677
IBM Group: Software Group
Modified date: Aug 7, 2002