DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=16264>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=16264

blank pages <= unhandled IllegalStateException

           Summary: blank pages <= unhandled IllegalStateException
           Product: Cocoon 2
           Version: 2.0.4
          Platform: All
        OS/Version: Other
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: core
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]


this bug applies to exceptions caught by CocoonServlet. When an exception is 
caught CocoonServlet is supposed to display an error page via a Notifier.

If any content has already been generated (written to response) this does not 
work. The reason is following code in CocoonServlet (several occurences):

...
if (manageExceptions) {
  res.reset();
                
  HashMap extraDescriptions = new HashMap(3);

  extraDescriptions.put("request-uri", request.getRequestURI());
  extraDescriptions.put("path-info", uri);
...

more specifically, the problem is res.reset(). it's supposed to reset the 
response. but if any content has already been comitted to the response, an 
IllegalStateException is thrown from res.reset(). since this exception is not 
caught CocoonServlet.service() is left at this point and thus the notifying 
part is not executed and no error page displayed.

fix: catch IllegalStateException in respective places

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, email: [EMAIL PROTECTED]

Reply via email to