2010-09-26 10 views
0

J'ai un problème qui me rend fou. Je ne suis pas sûr que ce soit un bug dans Tomcat ou simplement ma bêtise, mais voilà.Tomcat ignore ma servlet d'erreur personnalisée/page

J'ai une configuration personnalisée de servlet d'erreur, quelque chose like this. L'installation fonctionne et si je simule des exceptions ou des erreurs 404 etc. le servlet fonctionne, la page d'erreur est affichée correctement, le code de réponse est 500 ou 400 ... eh bien, cela fonctionne.

Mais la configuration ci-dessus ne me concerne pas et je dois transférer vers un JSP (je fais mes opérations dans le servlet, place les données appropriées dans la portée de la requête et les transfère au JSP pour l'afficher).

Alors, dans mon doPost/méthode doGet dans le servlet que je fais:

getServletContext().getRequestDispatcher(...).forward(request, response); 

La nouvelle configuration fonctionne jusqu'à un point. C'est-à-dire que le servlet s'exécute et avance vers le JSP, le JSP s'exécute (j'ai placé des instructions de log dedans et elles sont exécutées) mais dans le navigateur j'obtiens la page d'erreur tomcat par défaut, pas le contenu de mon JSP.

J'ai également mis en place <%@page isErrorPage="true"%> dans ma JSP mais peu importe si elle est présente ou non, après l'exécution de la JSP sa réponse disparaît juste et je reçois la page d'erreur Tomcat par défaut dans le navigateur.

Est-ce que quelqu'un maintenant pourquoi cela ne fonctionne pas? Je vais crazzzzzzyyyyyyyy!

Merci à tous!

P.S. J'utilise Tomcat 5.5.26.

Répondre

1

Très probablement, une exception a été levée. La page d'erreur personnalisée affiche-t-elle les détails de l'exception? Si non, avez-vous vérifié les journaux du serveur dans le dossier /logs pour voir si une exception s'est produite? Que dit la page d'erreur si vous affichez ${exception} (lorsque vous avez isErrorPage="true" dans la page d'erreur)? Notez que isErrorPage="true" ne devrait pas aller dans les fichiers JSP "normaux".

+0

Merci pour votre réponse. Je pense que je ne me suis pas bien compris. J'ai modifié la question, j'espère que c'est plus clair. Je fais TOUT ma logique dans le servlet d'erreur. La JSP n'affiche que les données. Mais même si le servlet et la JSP sont exécutés, le résultat de la JSP n'est pas ce que je vois dans mon navigateur. Tomcat pour une raison quelconque l'ignore ou quelque chose. Je reçois la page d'erreur Tomcat par défaut au lieu du contenu personnalisé de mon JSP. C'est mon problème et je ne sais pas ce qui le cause. – user8172373

+0

P.S. Je déteste les scriptlets: D, donc ma JSP est sympa et propre! – user8172373

+0

A droite, la question est maintenant plus claire. J'ai modifié la réponse. – BalusC

Questions connexes