No Servlet 3.0 ou mais recente, você pode apenas especificar
<web-app ...>
<error-page>
<location>/general-error.html</location>
</error-page>
</web-app>
Mas como você ainda está no Servlet 2.5, não há outra maneira senão especificar cada erro HTTP comum individualmente. Você precisa descobrir quais erros HTTP o usuário final pode enfrentar. Em um aplicativo da web barebones com, por exemplo, o uso da autenticação HTTP, com uma lista de diretórios desativada, usando servlets e códigos personalizados que podem gerar exceções sem tratamento ou que não possuem todos os métodos implementados, você gostaria de configurá-lo para erros de HTTP 401 , 403, 500 e 503, respectivamente.
<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>
Isso deve cobrir os mais comuns.
web.xml
declarada? Só existe desde o Servlet 3.0 uma maneira fácil.