Il suffit de déclarer un <error-page>
en web.xml
où vous pouvez spécifier la page qui doit être affiché sur un certain Throwable
(ou de l'un quelconque de ses sous-classes) ou un code d'état HTTP. E. g.
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/error.jsp</location>
</error-page>
qui affiche la page d'erreur sur une sous-classe de l' java.lang.Exception
, mais donc pas java.lang.Throwable
ou java.lang.Error
. De cette façon, vous pouvez avoir votre propre page d'erreur pour n'importe quel type d' Throwable
. E. g. java.sql.SQLException
, java.io.IOException
et ainsi de suite.
Ou,
<error-page>
<error-code>500</error-code>
<location>/error.jsp</location>
</error-page>
qui affiche la page d'erreur sur une erreur HTTP 500, mais vous pouvez également spécifier un autre pour 404 (Page Non Trouvée), 403 (Interdit), et cætera.
Si vous déclarez <%@page isErrorPage="true" %>
en haut de error.jsp
, alors vous avez accès à la jetée Exception
(et donc aussi de l'ensemble de ses getters) en ${exception}
dans EL.
<p>Message: ${exception.message}</p>
Voir aussi le Java EE 5 tutoriel sur le sujet.