Regarding the OP - I tried your code and it worked for me so not sure why your not seeing the exception stack.
Regarding to the first responder - you could take this a step further and have ActionUnhandledExceptionHandler redirect to another action (Redirect After Post). > Date: Sun, 18 Jan 2009 06:24:24 -0800 > From: ga...@prodia.co.uk > To: user@struts.apache.org > Subject: Re: exception handling > > > I know this is slightly different from the way you are trying it but this is > the way I am currently doing it is: > > <global-exception-mappings> > <exception-mapping exception="java.lang.Exception" > result="unhandledExceptionHandler"/> > </global-exception-mappings> > > > <global-results> > <result name="unhandledExceptionHandler" type="chain"> > <param > name="actionName">actionUnhandledExceptionHandler</param> > <param name="namespace">/unsecured</param> > </result> > <global-results> > > > and then I define an action - actionUnhandledExceptionHandler: > > public class ActionUnhandledExceptionHandler extends BaseActionSupport { > > private Exception exception; > > @Override() > public String execute() { > > if(exception != null){ > logException(serviceProsocUser , exception); > > // Send the user to the error page with a message > addActionError(getText("common.unknown.exception") + "<div > class=\"errorMessageExceptionText\">" + exception.toString() + "</div>"); > > return ERROR; > > } else { > logger.error("***** TRIED TO LOG EXCEPTION BUT EXCEPTION WAS > NULL! I HAVE NOT LOGGED THIS EXCEPTION! *****"); > } > > > addActionError(getText("actionUnhandledExceptionHandler.could.not.log.exception")); > return "canNotLogDatabaseError"; > } > > public void setException(Exception exception) { > this.exception = exception; > } > } > > > The logException method calls this to get the actual stacktrace: > > public String exceptionStackTraceToString(Exception exception){ > > StringWriter stringWriter = new StringWriter(); > exception.printStackTrace(new PrintWriter(stringWriter)); > String stackTrace = stringWriter.toString(); > > // As stackTrace may contain regular expression special characters > we need to make them harmless first > return Matcher.quoteReplacement(stackTrace); > } > > I then, from within logException, write the exception to an email and the > database but you can of course do what you like with it. > > HTH > > > > JJ__ wrote: > > > > Hello, > > I am trying to implement declarative exception handling for all the > > possible exceptions. The problem is that in this way I only catch some > > exceptions (not all of them) and I cant get its stack trace nor its > > message(it is only rendered the rest of my JSP but not the information > > about the stack or message about the excepion). I have this: > > > > In my struts.xml > > <global-results> > > <result name="handleException" > > type="redirect">error.jsp</result> > > </global-results> > > > > <global-exception-mappings> > > <exception-mapping result="handleException" > > exception="java.lang.Exception"/> > > </global-exception-mappings> > > > > And in my JSP > > <%@ taglib prefix="s" uri="/struts-tags" %> > > ... > > <s:property value="%{exception.message}"/> > > <s:property value="%{exceptionStack}"/> > > > > Thanks in advanced > > > > > > > > > > > > -- > View this message in context: > http://www.nabble.com/exception-handling-tp21518870p21528352.html > Sent from the Struts - User mailing list archive at Nabble.com. > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org > For additional commands, e-mail: user-h...@struts.apache.org > _________________________________________________________________ Windows Live™ Hotmail®: Chat. Store. Share. Do more with mail. http://windowslive.com/howitworks?ocid=TXT_TAGLM_WL_t1_hm_justgotbetter_howitworks_012009