Ich verwende das <error-page>
Element in web.xml , um die freundliche Fehlerseite anzugeben, wenn der Benutzer auf einen bestimmten Fehler stößt, z. B. einen Fehler mit dem Code 404:
<error-page>
<error-code>404</error-code>
<location>/Error404.html</location>
</error-page>
Ich möchte jedoch, dass der Benutzer <error-page>
eine Standardfehlerseite sehen sollte , wenn er keinen in angegebenen Fehlercode erfüllt . Wie kann ich das mit dem Element in der web.xml machen ?
web.xml
deklariert? Es gibt nur seit Servlet 3.0 einen einfachen Weg.Antworten:
Auf Servlet 3.0 oder neuer können Sie einfach angeben
Da Sie sich jedoch noch in Servlet 2.5 befinden, gibt es keine andere Möglichkeit, als jeden häufigen HTTP-Fehler einzeln anzugeben. Sie müssen herausfinden, mit welchen HTTP-Fehlern der Endbenutzer möglicherweise konfrontiert sein könnte. Auf einer Barebone-Webanwendung mit beispielsweise der Verwendung der HTTP-Authentifizierung, einer deaktivierten Verzeichnisliste, der Verwendung von benutzerdefinierten Servlets und Code, die möglicherweise nicht behandelte Ausnahmen auslösen können oder nicht alle Methoden implementiert haben, möchten Sie sie für HTTP-Fehler 401 festlegen 403, 500 bzw. 503.
Das sollte die häufigsten abdecken.
quelle
<error-code>
Tag überschreiben ?web.xml
XSD-Datei beweisen dies<error-code>
und<exception-type>
wurden optional anstatt erforderlich. Siehe Ausgabe 52135 .Sie können auch so etwas tun:
Für den Fehlercode 403 wird die Seite 403.html zurückgegeben, und für jeden anderen Fehlercode wird die Seite error.html zurückgegeben.
quelle
Sie können
<error-page>
Ausnahmen auch angeben<exception-type>
, z. B.:Oder ordnen Sie einen Fehlercode zu
<error-code>
:quelle