如何创建真正的STRUTS2 全局异常配置

近期看了下Struts2.0 发现可以对异常以配置的方式进行特定的处理,这可是非常实用的功能,于是乎拉出来练练。

原来一些书籍中描述的全局配置只是针对某给包内的全局配置,如下:

<package name="orgPkg" extends="exceptionPkg">
		
		<global-results>
			<result name="error">/error.jsp</result> 
		</global-results>
		<global-exception-mappings>
			<exception-mapping result="error" exception="java.lang.Exception"></exception-mapping>
			<exception-mapping result="error" exception="java.sql.SQLException"></exception-mapping>
		</global-exception-mappings>
		<action name="addOrgAction" class="com.taomujian.action.AddOrgAction">
			<result name="success" type="redirectAction">
				<param name="actionName">org</param>
			</result>
			<result name="input">org/addOrg.jsp</result>
			
		</action>
</package>

 那该所谓的全局异常只是针对该包内的配置起作用,那如何配置真正的全局异常处理呢?

 这就要注意下package中extends这个属性了,我们可以单独建立一个包用来配置全局属性,然后其他包都继承该包,则自动集成了该包中配置的全局属性。如下:

<package name="exceptionPkg" extends="struts-default">
		<global-results>
			<result name="error">/error.jsp</result> 
		</global-results>
		<global-exception-mappings>
			<exception-mapping result="error" exception="java.lang.Exception"></exception-mapping>
			<exception-mapping result="error" exception="java.sql.SQLException"></exception-mapping>
		</global-exception-mappings>
	</package>
	<package name="orgPkg" extends="exceptionPkg">
		<action name="addOrgAction" class="com.taomujian.action.AddOrgAction">
			<result name="success" type="redirectAction">
				<param name="actionName">org</param>
			</result>
			<result name="input">org/addOrg.jsp</result>
		</action>
</package>

 继承:这可是面向对象的基本概念!

你可能感兴趣的:(struts2)