现在的位置: 首页 > 综合 > 正文

Struts2的异常处理机制

2013年08月19日 ⁄ 综合 ⁄ 共 1462字 ⁄ 字号 评论关闭

Struts2采用声明式的方法管理异常处理,因此我们无需在execute方法体内写大量的try...catch...语句来捕获异常,execute方法将产生的所有异常抛出,统一交由Struts2框架处理,我们只需在struts.xml文件中配置异常的映射机制,Struts2便能够处理并转入相应的视图资源。 


异常映射可分为全局异常映射和局部异常映射,它和<result .../>的性质是一样的。 


配置代码如下: 




Xml代码 

<struts> 

    <package name="struts2" extends="struts-default"> 

        <!-- 配置全局异常映射 --> 

        <global-exception-mappings> 

            <exception-mapping result="sql" exception="java.sql.SQLException"/> 

        </global-exception-mappings> 

        <action name="login" class="com.test.action.LoginAction"> 

            <!-- 配置局部异常映射 --> 

            <exception-mapping result="myException" exception="com.test.exception.MyException"/> 

            <result name="success">result.jsp</result> 

            <result name="sql">error.jsp</result> 

            <result name="myException">error.jsp</result> 

        </action> 

    </package> 

</struts> 


<struts> 

<package name="struts2" extends="struts-default"> 

<!-- 配置全局异常映射 --> 

<global-exception-mappings> 

<exception-mapping result="sql" exception="java.sql.SQLException"/> 

</global-exception-mappings> 

<action name="login" class="com.test.action.LoginAction"> 

<!-- 配置局部异常映射 --> 

<exception-mapping result="myException" exception="com.test.exception.MyException"/> 

<result name="success">result.jsp</result> 

<result name="sql">error.jsp</result> 

<result name="myException">error.jsp</result> 

</action> 

</package> 

</struts> 


为了在异常处理页面中显示异常信息,我们可以使用<s:property/>标签来输出异常信息: 




<s:property value="exception"/>:输出异常信息本身 


<s:property value="exceptionStack"/>:输出异常堆栈信息

抱歉!评论已关闭.