[ https://issues.apache.org/struts/browse/WW-794?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_42479 ]
Tom Schneider commented on WW-794: ---------------------------------- My apologies, I incorrectly assumed this was a JasperReports exception. I would be concerned about changing the behavior in the way you describe--it may change the behavior in a such a way as to break compatibility with existing applications. In your case, I would create a new interceptor that filters out JasperException's and rethrows them. I'm not sure how we would handle this in a general sense. > Issue with ServletDispatcherResponse after a JasperException > ------------------------------------------------------------ > > Key: WW-794 > URL: https://issues.apache.org/struts/browse/WW-794 > Project: Struts 2 > Issue Type: Improvement > Components: Dispatch > Affects Versions: WW 2.1.6, WW 2.1.7 > Reporter: Grégory Joseph > Assignee: Rainer Hermanns > Fix For: 2.1.1 > > Attachments: skipPageContext-patch.tgz > > > Following my thread on > http://forums.opensymphony.com/thread.jspa?messageID=8487 , here's patch + > testcase, in case you guys think the problem is valid. > I had to resort to jmock-cglib, since I needed to mock the PageContext > concrete class: you need jmock-1.0.1 , jmock-cglib-1.0.1 , cglib-2.0.2 and > asm-1.4.3 for it to work. > // Here's a copy of my original post, for the record: > I'm having an issue with the ServletDispatcherResult : I have a > (simplistic) ExceptionInterceptor, which returns ERROR in case in > catches any Throwable. > I have a global result for error, mapped to an ErrorAction of ours, > which currently just logs and returns SUCCESS (the idea being that it's > going to automatically send a mail to someone, or create a jira bug > report if appropriate). This in turn has its SUCCESS result mapped to a > dispatcher for some jsp. > The problem actually occurs when the original action has a > JasperException thrown in its dispatched jsp view (currently using > tomcat 5.5.4) : the ServletDispatcherResult can't dispatch to the > error.jsp (which is the result of the ErrorAction), because, like jasper > reports, the Stream is already closed. > I figured that by removing lines 58-62 from ServletDispatcherResult, > thing just work as I expect. That is, removing he pageContext.include > call, and letting my jsp be forwarded instead. Since I'm not sure what > the intent with pageContext.include is - I've seen an older jira report > mentionning it (WW-292), I thought it could simply be optional. (i.e, > adding a setSkipPageContextInclude(boolean skip) in ServletDispatcherResult) > How does that sound? I'm currently working on a patch for this, but > PageContext being a concrete class, I needed to use jmock+jmock-cglib > instead of mockobjects. What do you guys think? -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.