2010-04-13 61 views
0

對於一種類型的異常,我想要顯示一個頁面。對於所有其他例外,我有一個默認的錯誤頁面。在我的web.xml我有事情設置是這樣的:Tomcat異常類型忽略更一般的特定異常

<error-page> 
    <exception-type>java.io.IOException</exception-type> 
    <location>/queryException.jsp</location> 
</error-page> 

<error-page> 
    <exception-type>java.lang.Exception</exception-type> 
    <location>/error.jsp</location> 
</error-page> 

的問題是error.jsp是以往任何時候都顯示只有頁面,即使IOException被拋出。標籤出現的順序無關緊要;如果我刪除了java.lang.Exception標籤,我可以獲得queryException.jsp以顯示IOExceptions。這裏有什麼解決方案?除特定頁面的用戶外,我如何爲所有例外保留一般錯誤頁面?

+0

能夠複製相同的問題,並嘗試使用 java.lang.Throwable,但仍然無效。這裏另一個例子http://www.coderanch.com/t/443600/Servlets/java/Overriding-exception-type-tag-web – JoseK 2010-04-14 12:35:16

回答

0

「這裏的解決方案是什麼?除了那些具有特定頁面的人,我如何爲所有例外保留一個通用錯誤頁面?」

您無法執行此操作...您需要移除一般錯誤頁面以外的方向來處理所有異常。