2010-04-13 2 views
0

Pour un type d'exception, IOException, je souhaite afficher une page. Pour toutes les autres exceptions, j'ai une page d'erreur par défaut. Dans mon web.xml j'ai des choses configuration comme ceci:Tomcat Exception-Type ignorant une exception spécifique pour plus d'informations générales

<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> 

Le problème est le error.jsp est la seule page qui montre jamais, même si une IOException est levée. L'ordre dans lequel les tags apparaissent n'a pas d'importance; si je supprime la balise java.lang.Exception, je peux afficher queryException.jsp pour IOExceptions. Quelle est la solution ici? Comment puis-je conserver une page d'erreur générale pour toutes les exceptions SAUF pour les pages spécifiques?

+0

Je suis capable de reproduire le même problème et essayé avec java.lang.Throwable mais cela ne fonctionne toujours pas. Un autre exemple ici http://www.coderanch.com/t/443600/Servlets/java/Overriding-exception-type-tag-web – JoseK

Répondre

0

"Quelle est la solution ici? Comment puis-je conserver une page d'erreur générale pour toutes les exceptions SAUF pour ceux avec des pages spécifiques?"

Vous ne pouvez pas faire cela ... Vous devrez vous déplacer dans une direction autre qu'une page d'erreur générale pour toutes vos exceptions.