Hotfix FR-1623: You receive exceptions "Illegal State Exception" and "Closed IO Exception - Response Has Been Closed"
Description
This technote describes a fix for a condition under which you may receive the following exceptions in the JRun standard error log:
java.lang.IllegalStateException
followed by
jrun.servlet.io.ClosedIOException: Response has been closed
Symptoms
The issue occurs when JRun4 re-introduces a Java servlet request into itself, to satisfy one of the following conditions:
- A servlet obtains an instance of the platform request dispatcher, and uses that to forward or include a subsequent URL
- A JSP or Java application uses a framework which performs this action (e.g. Struts logic:redirect, JSP pageContext.forward(...), ColdFusion getPageContext.forward(...) or .include(...))
- A servlet (JSP, CF etc.) client performs forwarding or includes a URL which does not contain a page name, and the container reintroduces the request in order to satisfy the "Welcome File List" directive (in which the engine searches for, e.g. index.html, index.jsp, index.cfm etc.)
After experiencing this error, the thread in which the error occurs becomes invalid, and subsequent requests may receive a correct response, a blank web page, or one containing an error.
This issue has been shown to occur on FusionReactor installations located on JRun4 platforms on Windows XP Pro 32-bit, but may not be limited to this platform.
Analysis
This issue occurs when the servlet platform attempts to re-run filters on requests which are being reprocessed during forward or include operations. A small change in the way FusionReactor 3.0.1 handles streams may expose this issue.
After the exception occurs, the JRun thread in which it occurred becomes stale. If it is reused for a subsequent request, further exceptions are logged.
Resolution
Customers experiencing this issue with FusionReactor 3.0.1 only should apply the attached Hotfix 1623, which resolves the issue.
Instructions for applying the hotfix are supplied in instructions.txt within the hotfix zip file.
Hotfixes are cumulative: any future hotfixes on the FusionReactor 3.0.1 stream, up to but not including the next point release, will contain this hotfix (and all earlier hotfixes since the last point release).
Files
hotfix-fr-1623.FR-FR301-12052.zip
Taxonomy
After installation, FusionReactor's "About" page should identify itself as Revision: 3.0.1, Build: FR-FR301.1.12052.
Hotfix FR 1623 - obf. (Stream: branch FR301, build 1, SVN 12052)
Issue Details
| Type: | Technote |
|---|---|
| Issue Number: | FRS-216 |
| Components: | Request Managment |
| Environment: | |
| Resolution: | Fixed |
| Added: | 02/12/2008 14:42:40 |
| Affects Version: | 3.0.1 |
| Fixed Version: | 3.0.1 |
| Server: | |
| Platform: | |
| Related Issues: | None |
Issue Feedback
Did you find this issue helpful?
1 out of 1 person found this article helpful

