日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

struts声明式异常

發(fā)布時間:2025/3/17 编程问答 12 豆豆
生活随笔 收集整理的這篇文章主要介紹了 struts声明式异常 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一,局部exception

把a(bǔ)ction中產(chǎn)生的異常配置到struts-config.xml中,哪個action出現(xiàn)異常就在哪個action的配置中進(jìn)行配置。

<action path="/login"
????type="com.bjsxt.struts.LoginAction"
????name="loginForm"
????scope="request"
????validate="false"
????input="/login.jsp"
??>?
??<!--
???<exception key="user.not.found" type="com.bjsxt.struts.UserNotFoundException" path="/login_error.jsp"/>
???<exception key="user.password.error" type="com.bjsxt.struts.PasswordErrorException" path="/login_error.jsp"/>
?? -->?
???<forward name="success" path="/login_success.jsp"/>
???<forward name="error" path="/login.jsp"/>
??</action>

exception中key表示的是國際化中對應(yīng)的信息

type表示的是異常類

handler表示自定義的異常處理方式

如果要讓出現(xiàn)異常后自動跳轉(zhuǎn)到某頁面,則在Action中配置屬性input,或者在exception中添加path屬性,其優(yōu)先級高于Action中的input。

二,全局exception

<global-exceptions>
?<!--
???<exception key="user.not.found" type="com.bjsxt.struts.UserNotFoundException" path="/login_error.jsp"/>
???<exception key="user.password.error" type="com.bjsxt.struts.PasswordErrorException" path="/login_error.jsp"/>
? -->
?
? <!--
??<exception key="user.not.found" type="com.bjsxt.struts.UserNotFoundException" handler="org.apache.struts.action.ExceptionHandler"/>
??<exception key="user.password.error" type="com.bjsxt.struts.PasswordErrorException" handler="org.apache.struts.action.ExceptionHandler"/>
? -->
?
? <!--
? <exception key="error.exception" type="com.bjsxt.struts.ErrorCodeException" handler="com.bjsxt.struts.ErrorCodeExceptionHandler"/>
?? -->
?? <!--
?? <exception key="error.exception" type="com.bjsxt.struts.AppException" handler="com.bjsxt.struts.AppExceptionHandler"/>
??? -->?
??
?? <exception key="error.exception" type="com.bjsxt.struts.AppException"/>
?</global-exceptions>

三,struts實現(xiàn)聲明式異常的方式

如果Action中出現(xiàn)異常,會被Action中的異常捕獲并向上拋出異常,而該異常會被struts中,調(diào)用processException()方法處理異常,使用反射查找配置的異常,如果沒有配置那么就判斷是否是IOException異常或者是ServletException異常,如果不是拋到web容器中,如果在web.xml中配置了該異常的處理方式,那么就處理如果沒有配置那么就直接顯示到頁面;如果在struts中配置了,那么就按照配置的處理,struts創(chuàng)建handler類來處理配置的異常。

轉(zhuǎn)載于:https://www.cnblogs.com/jinzhengquan/archive/2011/02/15/1955124.html

總結(jié)

以上是生活随笔為你收集整理的struts声明式异常的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。