Wendy,

Struts exception handling *does* work correctly when it comes to inheritance; and your configuration looks correct. First, check the FQN (fully-qualified name) of your exception -- if that's correct, I suggest you take out your handy-dandy debugger and set a breakpoint in the RequestProcessor. I think you will find that using the debugger is
(a) fun,
(b) educational, and
(c) fun ;)


-Bill Siggelkow

Wendy Smoak wrote:
I know I've tried this before, but so far I haven't gotten all the pieces
properly arranged so it works. :/

I currently have code like this in an Action:
            try {
               benId = loginDAO.getBenId( asurite );
            } catch ( TermsAcceptanceException ex ) {
               return mapping.findForward( "terms" );
            }

In struts-config.xml:
         <action
            path="/denLogin"
            type="edu.asu.vpia.struts.DevilsDenLoginAction"
            name="loginForm"
            scope="request"
            validate="true"
            input="den.login.page">
               <forward name="success" path="den.login.success"/>
               <forward name="terms" path="den.terms.agreement" >
        </action>

It's my impression that I don't need to catch the exception, that I *should*
be able to let Action.execute(...) throw it and the framework can be
configured to deal appropriately with it.

So I took out this line:
               <forward name="terms" path="den.terms.agreement" >
And put in:
            <exception
                type="edu.asu.dao.DAOException"
                path="/WEB-INF/error.jsp"
                key="error.dao.exception"/>

And I just get a JSP with a stack trace.  Although TermsAcceptanceException
extends DAOException, it doesn't go to error.jsp.

Two questions... what is the 'key' attribute of <exception> used for, and
can anyone tell what I'm doing wrong?

Thanks!


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



Reply via email to