所有异常不在action中处理,全部抛出。然后在struts.xml中进行处理。
struts.xml
View Code
<action name="*-*" class="com.bjsxt.bbs2009.action.{1}Action" method="{2}">
<result>/admin/{1}-{2}.jsp</result>
<result name="input">/admin/{1}-{2}.jsp</result>
<exception-mapping result="error" exception="java.sql.SQLException" />
<result name="error">/error.jsp</result>
</action>
上面的是为每个action中的异常进行单独处理。我们可以配置全局处理,如下:
View Code
<package name="bbs2009_default" 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>
</global-exception-mappings>
</package>
需要注意的是<global-results> <global-exception-mappings>的顺序。