Inhalt

Einbettung in eine HTML-Seite (JSP-Syntax)

Bei der Entwicklung der Java Server Pages wurde Wert darauf gelegt, die HTML-Syntax in Form von Tags auch für die Einbettung des Java- bzw. JSP- Anteils der Seite verwenden zu können.
Es gibt verschiedene Arten in den HTML-Code eingebundener Skriptelemente (Scriptlets genannt), die im folgenden einzeln erläutert werden:

Anweisungs-Scriptlets
Anweisungen bzw. Anweisungsblöcke müssen nicht vollständig in einem Tag erfolgen, sondern können über mehrere Scriptlets verteilt werden. Die Syntax hierfür ist:

<% ... Scriptlet ... %>

ein Beispiel:

<% for (int i=1; i<=10; I++) { %>
     <H1> diese Überschrift wird zehn mal ausgegeben ! </H1>
<% } %>

Deklarationen von lokalen Variablen erfolgen ebenfalls auf diese Weise. (Die so deklarierten Variablen sind dann in anderen Methoden des Servlets nicht sichtbar !)
Es kann innerhalb dieser Scriptlets auch eine gewöhnliche Java-Fehlerbehandlung mit try - catch - Blöcken erfolgen. Die Java Server Pages haben allerdings ein eigenes Konzept, auf Fehler zu reagieren, die während der Ausführung der Seite auftreten. (s. page-Direktive - errorPage)

Deklarationen
Deklarationen von Instanz-Variablen des Servlet-Objektes werden folgendermassen eingebunden:

<%! int instanzVariable = 4711; %>

Ausdrücke (Expressions)
um nicht für jede Ausgabe die umständliche Form out.print(i+j) verwenden zu müssen, wurde eine einfachere Syntax entwickelt, um das Ergebnis eines Java-Ausdruckes direkt in die Server-Antwort einzufügen:

<%= i+j %>

Dabei wird der Wert des Ausdrucks zur Laufzeit bestimmt und im ASCII-Format direkt in die HTTP-Antwort der Java Server Page eingesetzt.

Kommentare
Angelehnt an die Syntax für HTML-Kommentare (<!-- HTML-Kommentar -->) gibt es für die JSP's folgende Möglichkeit, Kommentare anzugeben:

<%-- Java Server Pages - Kommentar --%>

Diese Kommentare werden beim Übersetzungsvorgang der Java Server Page entfernt und erscheinen somit nicht im HTML-Code, den der Client empfängt. Die HTML-Kommentare dagegen überleben diese Prozedur und lassen sich auch auf Client-Seite noch anzeigen.

JSP-Direktiven
Mit Hilfe von Direktiven kann der JSP-Programmierer Einfluss auf das Übersetzen und Ausführen der Java Server Page nehmen.
Ausführliche Beschreibung der möglichen Direktiven
Syntax:

<%@ Direktivenname { attributname = "wert" } ... %>

JSP-Aktionen
Mit den sogenannten Aktionen kann der Ablauf der JSP gesteuert, bzw. andere Java-Objekte erzeugt und manipuliert werden. Hiermit erfolgt auch die Einbindung von JavaBeans.
Ausführliche Beschreibung der möglichen Aktionen
Syntax:

<jsp:Aktionsname { attributname = "wert" } ... />


Besonderheiten bei der Verwendung dieser Syntax

Probleme bei der Verwendung der oben angegebenen Syntax treten auf, wenn z.B. das Ende-Tag ...%> innerhalb eine Java-Anweisung verwendet werden soll. Damit die Syntax eindeutig bleibt, muss in einem Solchen Fall die Form ...%\> verwendet werden.
Dies gilt ebenso für das Beginn-Tag <%... ausserhalb von Scriptlets. Um diese Zeichenkette trotzdem benutzen zu können, muss die Form <\%... verwendet werden.

Inhalt