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"/>:输出异常堆栈信息 |
Struts2的异常处理机制
最新推荐文章于 2022-04-23 11:55:47 发布