JBuilder2005 Praktische JSP-Fehlerbehandlung (4)
Autor:Eve Cole
Aktualisierungszeit:2009-07-02 17:09:47
Fehlerbehandlungsseite error.jsp
Webanwendungen verfügen im Allgemeinen über eine oder mehrere einheitliche JSP-Seiten zur Fehlerbehandlung, sodass dem Benutzer beim Auftreten eines Fehlers auf einer funktionsfähigen JSP-Seite in benutzerfreundlicher Form Feedback gegeben werden kann. Freundliche und einheitliche Fehlerseiten sind ein Aspekt, der in der Webpräsentationsebene nicht ignoriert werden darf.
Als Nächstes erstellen wir die Fehlerbehandlungsdatei error.jsp, deren Code wie folgt lautet:
Codeauflistung 11 error.jsp Fehlerbehandlung der JSP-Seite
1. <%@page contentType="text/html; charset=GBK" isErrorPage="true" %> 2. <html> 3. <Kopf> 4. <Titel>Fehler</Titel> 5. </Kopf> 6. <body bgcolor="#ffffff"> 7. Leider ist eine Systemausnahme aufgetreten. Klicken Sie <a href="login.jsp">hier</a>, um zur Startseite zurückzukehren. 8. </Körper> 9. </html> |
Das Attribut isErrorPage im Seitendirektiven-Tag der JSP-Fehlerbehandlungsseite sollte auf „true“ gesetzt werden, wie in Zeile 1 gezeigt, damit auf das implizite Ausnahmeobjekt auf der JSP-Seite zugegriffen werden kann. In Zeile 7 melden wir dem Benutzer auf „elegante“ Weise den Programmfehler und stellen einen Link zurück zur Anmeldeseite bereit.
Gehen wir nun zurück und geben error.jsp als Fehlerbehandlungsseite von switch.jsp und login.jsp über <%@ page errorPage="Error Handling JSP"%> an.
Nach dem Hinzufügen einer Fehlerbehandlungsseite zur Seite switch.jsp lautet der Code wie folgt:
Codeauflistung 12 switch.jsp fügt eine JSP-Seite zur Fehlerbehandlung hinzu
1. <%@page contentType="text/html; charset=GBK" errorPage="error.jsp"%> 2. <%@page import="bookstore.*"%> 3. <%@page import="java.sql.*"%> 4.… |
Nach dem Hinzufügen der JSP-Seite zur Fehlerbehandlung zur Seite login.jsp lautet der Code wie folgt:
Codeauflistung 13 login.jsp fügt eine Fehlerbehandlungsseite hinzu
1. <%@page contentType="text/html; charset=GBK" errorPage="error.jsp"%> 2. <%@page errorPage="error_error.jsp"%> 3.… |
Wenn auf diese Weise die SQL-Abfrageanweisung von switch.jsp falsch ist und eine SQLException auslöst, verschwindet die Fehlerseite mit den obskuren Ausnahme-Trace-Informationen und wird durch die folgende benutzerfreundliche Fehlerseite ersetzt:
Abbildung 15 Seite zur benutzerfreundlichen Fehlerbehandlung |
Die Anmeldung ist fehlgeschlagen. fail.jsp
Wenn der Benutzer ein falsches Passwort eingibt, leitet switch.jsp zur Seite fail.jsp weiter. Ebenso können Sie die Seite fail.jsp über den JSP-Assistenten erstellen. Der Code für fail.jsp lautet wie folgt:
Codeauflistung 14 fail.jsp-Anmeldefehlerseite
1. <%@ page contentType="text/html; charset=GBK" errorPage="error.jsp" %> 2. <html> 3. <Kopf> 4. <Titel> 5. scheitern 6. </Titel> 7. </Kopf> 8. <body bgcolor="#ffffff"> 9. Das von Ihnen eingegebene Passwort ist falsch. Klicken Sie <a href="login.jsp">hier</a>, um zur Anmeldeseite zurückzukehren. 10. </Körper> 11. </html> |
Wenn der Benutzer ein falsches Passwort eingibt, hat die angezeigte Seite „fail.jsp“ folgende Auswirkungen:
Abbildung 16 Seiteneffekt fail.jsp |