struts对异常的处理
对struts1.2的处理
<error-page>
<error-code>500</error>
<location>/error.jsp</location>
</error-page>
<error-page>
<exception-type>javax.servlet.ServletException</error>
<location>/error.jsp</location>
</error-page>
Struts框架也允许以配置的方式来处理异常,配置方法可以避免在Action类中通过硬编码来处理异常,提高应用的灵活性,可重用性和可维护性.对于 Action类的execute()方法抛出的异常会先查找异常处理元素<exception>,如果是被嵌套在<global- exception>元素中就表示是全局异常处理元素,对所有的Action都适用.如果是嵌套在<action>元素中,就表示局部 的异常处理元素,仅对当前的Action适用.阐述一下<exception>元素的属性:
1) type:指定待处理的异常类
2) handler:指定异常处理类.默认是ExceptionHandler.如果自己要定义必须继承它
3) path:指定转发路径
4) key:指定错误消息key.根据这个key到ResourceBundle中寻找匹配的消息文本
5) bundle:指定ResourceBundle,如果没设置将使用哦么人的ResourceBundle
6) scope:指定ActionMessages对象的存放范围,默认request,也可以设置session
Struts框架提供了强大的异常处理功能,Struts控制器负责捕获异常,并把异常包装与
ResourceBundle绑定的ActionMessages对象,在视图层<html:error>标签能够显示出来,主要可以通过配置的方式和编程的方式实现,这里不推荐用编程的方法,可以增强程序的灵活性,可重用性,可维护性.