struts2 环境下 异常设计 和处理

框架:struts2.0.14,spring2.5.6,ibatis2.3.4

抽象出两种异常:
1.严重的不可恢复的异常:SystemException extends RuntimeException
2.有机会被处理的异常:AppException extends Exception

我的设计思路:在业务代码里面用MessageId等信息构造AppException或SystemException 并抛出,然后由拦截器转发到专用的异常处理Action中处理(如AppExceptionHandleAction或SystemExceptionHandleAction)。

我的问题是:在AppExceptionHandleAction或SystemExceptionHandleAction中,我怎样能取得那个AppException或SystemException 呢?之所以要取得这个异常对象,是想取得它的MessageId并进行日志和别的处理。

查了一下文档,actionSupport类里并没有相关的取得exception的方法。把异常转到Action中处理的思路有问题么?
请问各位达人们都是怎么做的?有没有什么最佳实践?

猜你喜欢

转载自wangbing9577.iteye.com/blog/1135886