Как я могу уловить все ошибки на одной странице из web.xml?
Я попытался использовать
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/errors/error.jsp</location>
</error-page>
но я не поймаю 404 ошибки. Как я могу уловить также 404 и т.д. Ошибки на эту же страницу? Я хочу поймать ВСЕ коды ошибок на ту же страницу ошибок jsp.
Ответы
Ответ 1
Вы можете добавить тег <error-code>
для этого
<error-page>
<error-code>404</error-code>
<location>/errors/error.jsp</location>
</error-page>
UPDATE:
В соответствии с вашим обновленным вопросом - вам нужно будет определить EACH код ошибки индивидуально в файле web.xml.
Используя <exception-type>java.lang.Throwable</exception-type>
поймает ошибку 500s, но не 404s
Ответ 2
Я использую это:
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/pages/exception/sorry.html</location>
</error-page>
<error-page>
<error-code>403</error-code>
<location>/security/403</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/security/404</location>
</error-page>
Ответ 3
В Tomcat7 (может работать на более старых версиях, но я не проверял)
добавьте нужные страницы ошибок (например, 404.jsp, general_error.php и т.д.)
добавить в web.xml(все сначала, а затем конкретные, адаптировать его к вашему курсу):
<error-page>
<location>general_error.php</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>404.jsp</location>
</error-page>
<error-page>
<error-code>409</error-code>
<location>error_page.jsp?error=custom_message</location>
</error-page>