У сервлет 3.0 або новіших версіях ви можете просто вказати
<web-app ...>
<error-page>
<location>/general-error.html</location>
</error-page>
</web-app>
Але оскільки ви все ще знаходитесь на сервлеті 2.5, немає іншого способу, ніж вказати кожну загальну помилку HTTP окремо. Вам потрібно зрозуміти, з якими помилками HTTP може виникнути кінцевий користувач. На веб-сайті без гофреанів, наприклад, з використанням HTTP-аутентифікації, з відключеним списком каталогів, використанням користувацьких сервлетів та коду, який, можливо, може видаляти необроблені винятки або не застосовувати всі методи, тоді ви хочете встановити його для помилок HTTP 401 , 403, 500 та 503 відповідно.
<error-page>
<!-- Missing login -->
<error-code>401</error-code>
<location>/general-error.html</location>
</error-page>
<error-page>
<!-- Forbidden directory listing -->
<error-code>403</error-code>
<location>/general-error.html</location>
</error-page>
<error-page>
<!-- Missing resource -->
<error-code>404</error-code>
<location>/Error404.html</location>
</error-page>
<error-page>
<!-- Uncaught exception -->
<error-code>500</error-code>
<location>/general-error.html</location>
</error-page>
<error-page>
<!-- Unsupported servlet method -->
<error-code>503</error-code>
<location>/general-error.html</location>
</error-page>
Це має охоплювати найпоширеніші з них.
web.xml
оголошено? З Servlet 3.0 існує лише простий спосіб.