Cyh的博客

          Email:kissyan4916@163.com
          posts - 26, comments - 19, trackbacks - 0, articles - 220

          struts2異常攔截器

          Posted on 2009-06-19 23:35 啥都寫點 閱讀(5865) 評論(0)  編輯  收藏
                  在實際開發中,我們需要將捕獲的異常信息打印出來,換上通俗的語言讓客戶能夠大概了解是原因引起的異常,所以我們需要將異常信息顯示到頁面上來,讓客戶能夠看得見。這里介紹以下struts2的異常處理機制。在sturts2的struts-default.xml中,引用了struts2定義的攔截器:

            <interceptor name="exception" class="com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor"/>

          下面是一個小例子來說明struts2中,應該如何捕獲異常信息,并將異常信息顯示到頁面:

          一個簡單的index.jsp頁面,只有一個按鈕,點擊進入action:
          <s:form action="login">
                     <s:submit value="submit"/>
           </s:form>


          struts.xml的配置:
          <struts>
           
           
          <package  name="Action" extends="struts-default">

              
          <global-results>
               
          <result name="all">/error.jsp</result>
              
          </global-results>

              
          <global-exception-mappings>  
                           
          <exception-mapping result="all" exception="java.lang.Exception">  
                           
          </exception-mapping>
              
          </global-exception-mappings>  
           
          <action name="login" class="com.action.LoginAction">

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

           
          </package>

          </struts>

          Action:
          public class LoginAction  extends ActionSupport  {

              
              @Override
              
          public String execute() throws Exception {
              
          try{    
                  
                  
          int i = 9/0;
              
              }
          catch (Exception e) {
                  
                  
          throw new Exception(e);
              
              }

                  
          return "success";
                  
              }

              
          }

          打印錯誤信息的頁面 error.jsp:
           <body>
              
          <s:property value="exception.message"/>
            
          </body>

          這樣就可以把異常信息打印到指定的頁面,當然也可以在struts.xml中定義局部的異常映射信息。




                                                                                                                 --    學海無涯
                  

          主站蜘蛛池模板: 拉萨市| 柏乡县| 洪湖市| 耿马| 晋江市| 曲沃县| 惠水县| 曲水县| 长泰县| 湖州市| 马尔康县| 淄博市| 石泉县| 建宁县| 丹寨县| 昌吉市| 多伦县| 林州市| 天柱县| 宝兴县| 岚皋县| 昌吉市| 海晏县| 昆明市| 永德县| 清远市| 永州市| 铜陵市| 固阳县| 绿春县| 连州市| 金山区| 玉门市| 丹棱县| 开化县| 镇原县| 东乌珠穆沁旗| 丹江口市| 崇仁县| 岚皋县| 虎林市|