struts檔案配置順序

不設限發表於2011-12-06
 

在配置struts的出錯頁面的時候是有順序的,比如配置全域性的出錯的頁面和全域性的預設頁面,這兩個頁面的先後順序是:
先配置全域性的預設頁面,再配置全域性的錯誤頁面
<global-results>
<result name="error">error.jsp</result>
</global-results>

<global-exception-mapping>
<exception-mapping result="error" exception="java.lang.Exception">exception.jsp</exception-mapping>

</global-exception-mapping>

在配置全域性的錯誤出錯的處理的時候是這樣的,就是在程式在一個Action中執行出錯的時候,它首先是在當前的包
裡面去找有沒有對應的錯誤的處理頁面,如果有就直接的把錯誤交給本包來處理,如果發現沒有對應的處理的Action
的話,它就會去它的父包裡面去找有沒有對它的錯誤的處理,如果還是發現沒有的話,就直接的報錯,如果有的話,就把
這個錯誤交給這個父包裡面的Action來處理,這個時候根據父包裡面給出的result,程式會再次的回到最初的包裡面去
找對應的父包裡面的所指定的那個result,有的話就直接的顯示出來的,當然這個錯誤的結果頁面也是可以直接的寫在
<global-results>裡面的,這樣的話,那麼原來出錯的包裡面也就不要再次的定義錯誤的頁面了,全部的交給全域性的處理了.


<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>
就這樣來配置就可以了


注意在配置的時候, <default-action-ref name=""></default-action-ref>這個是有bug的,不可以隨便的使用

 

相關文章