Hello,

1.0 doesn't support declarative exception handling, but it doesn't prevent
you from 
Doing so...:)  Anyway, what I would do is: 1) Implement an abstract Action
have and
Abstract method execute(...) throw Exception.  2) Implement the perform(...)
method
That will call you're the abstract excecute(...) method, and catch all or
any specific
Exception and return the associated forward to the specific View(JSP) as
needed. 
3) Map all/any error-code and exception mapping in your web.xml to an Action
that
Extended from your abstract exception.  This exception can be generic or
specific to 
A particular mapping, it will profile the exception and re-throw or create a
new exception
And throw it, so that the perform method will catch this exception and route
it to the 
Targeted VIEW.

Hope this would help,

--danny

-----Original Message-----
From: atta ur-rehman [mailto:[EMAIL PROTECTED]] 
Sent: Monday, November 18, 2002 10:57 AM
To: Struts Users Mailing List
Subject: Re: Howto handle this behavior in Struts+Tiles


Thanks, Danny, for the detailed response.
We're running Struts 1.0.x. Does it support ExceptionHandler paradigm? If so
could you please point towards some starting points.

Thanks again.

ATTA


----- Original Message -----
From: "Trieu, Danny" <[EMAIL PROTECTED]>
To: "'Struts Users Mailing List'" <[EMAIL PROTECTED]>
Cc: "Mebed, Waheed" <[EMAIL PROTECTED]>
Sent: Monday, November 18, 2002 10:36 AM
Subject: RE: Howto handle this behavior in Struts+Tiles


> Hello,
>
> Usually exception that being thrown by the VIEW(JSP) are rendering 
> related exception. This could be tags/Scriptlet that access resource, 
> JavaBeans, fails. Meaning the
> Resource is not there.  And when these thing happen with composite view
> thing became
> A bit tricky.  First of all, within the container, the layout, of the
> composite view
> You don't where exception might be thrown.  Second, the page directive for
> 'errorPage'
> Can only be set at the outter most container, the layou, and not within
any
> of its
> Contained JSP.  Since, you never know when response has been committed 
> to the client Browser.  And if response has already committed to the 
> clien browser, any attemp to
> Forward to a different resource is an IllegalStateException.  A quick
> solution to your
> Problem is to only have the page directive for your JSP is in the outer
most
> container,
> The layout.
>
> My approach to handling the front-end exception in Struts1+ is having 
> a sub-module for Handling exception with a set of custom or generic 
> ExceptionHandler, with action mapping
> That will capture the exception, do exception profiling or anything
> neccessarry, and use
> Struts declarative exception handling to map it to a user friendly View
for
> displaying
> Specific error pages.  This has to work with the Web application error 
> mapping in the Web.xml deployment descriptor, to map different 
> error-code and exception
to
> the right
> Action mapping in your exception sub-module that will handle the
exception.
> I think
> This is a much cleaner way to haddle exception since it promote 
> encapsulation of exception Handling into one central place, the 
> sub-module, that can be manage easily and consistent
> Through out the entire application.  Plus, exception handler can be reused
> in different
> Web application with the entire enterprise.
>
> Hope this would help,
>
> -danny
>
> -----Original Message-----
> From: atta ur-rehman [mailto:[EMAIL PROTECTED]]
> Sent: Monday, November 18, 2002 9:52 AM
> To: struts users mailing list
> Subject: Howto handle this behavior in Struts+Tiles
>
>
> Dear all,
>
> Here is my "layout.jsp" file:
>
> <%@ page errorPage="ErrorPage.jsp" %>
>
>      <tiles:insert attribute="menu"/>
>      <tiles:insert attribute="body"/>
>      <tiles:insert attribute="footer"/>
>
> The "menu" tile is a JSP page that could throw an exception. Now 
> whenever
an
> exception is thrown on the "menu" tile I want to goto JSP Error Page. 
> What
I
> get instead is this exception:
>
> [Exception in:/main-menu.jsp] reset() failed - data has already been 
> sent
to
> client java.lang.IllegalStateException: reset() failed - data has 
> already been sent to client.
>
> Could you please help me with this one? What do I need to fix this
problem.
> By the way "menu.jsp" contains <%@ page errorPage="ErrorPage.jsp" %> 
> directive. And currently if there is an exception on "layout.jsp" 
> Error
Page
> does show up with appropriate error message.
>
> TIA,
>
> ATTA
>
>
> --
> To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
> For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>
>
>


--
To unsubscribe, e-mail:
<mailto:[EMAIL PROTECTED]>
For additional commands, e-mail:
<mailto:[EMAIL PROTECTED]>

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to