JSPs absichern

Eine einfache Möglichkeit um zu unterbinden, das in einer JavaServerPage auftretende Fehler bis in den Browser propagiert werden, ist ein automatisches try/catch um alle Seiten.

Dasganze nennt sich dann implizites Include und wird in der web.xml unter <jsp-config> im <jsp-property-group> Tag  konfiguriert. Dazu werden einfach die folgenden 3 Zeilen:

<url-pattern>*.jsp</url-pattern> <include-prelude>/WEB-INF/includes/prelude.jsp</include-prelude> <include-coda>/WEB-INF/includes/coda.jsp</include-coda>

ergänzt. Wichtig ist es das URL-Pattern zu definieren, damit sichergestellt wird, das nicht um jede Datei (z.B. auch PDF etc.) dieser Code eingefügt wird.

Die Datei prelude.jsp könnte im einfachsten Fall nur ein:

<% try { % >

enthalten. Jedoch lassen sich hier auch JSP übergreifende Initialisierungen vornehmen und zentral an einer Stelle verwalten. Leider steigen IDEs an der Stelle aus, wenn man Taglibrarys in dieser Datei lädt und in einer anderen JSP verwenden möchte.

Die Datei coda.jsp enthält dann einen allgemein gültigen Exceptionhandler

<% }  catch (Throwable t) {
         //Weiterverarbeitung im Fehlerfalle hier definieren.
    }
} %>

Das Copyright für veröffentlichte, vom Autor selbst erstellte Objekte bleibt allein beim Autor der Seiten. Eine Vervielfältigung oder Verwendung der Fotografien, Grafiken, Tondokumente, Videosequenzen und Texte in anderen elektronischen oder gedruckten Publikationen ist ohne ausdrückliche Zustimmung des Autors nicht gestattet.