JSP Direktive

Mit JSP Direktiven werden dem JSP-Compiler Informationen zum Seitenaufbau gegeben. Der grundsätzliche Aufbau einer JSP Direktive ist:

<%@ direktive %> für XML: <jsp.directive.name ... />

Nachfolgende JSP Direktiven sind definiert:

  • include
  • page
  • tagLib

JSP Direktive - include

Mit der JSP Direktive include kann der Inhalt einer Datei in die JSP Seite eingebunden werden. Eingebunden wird die Datei zur complile-Zeit. Eine Änderung der Datei nach dem compilieren der JSP ist in der JSP nicht sichtbar. Der allgemeine Aufbau der JSP Direktive include ist:

<%@include file="dateiname.ext" %>

Das nachfolgende Beispiel zeigt die Einbindung einer Textdatei in einer JSP-Seite.

Listing: JSP2.jsp

<html>
  <body>
    <h1>JSP directive include</h1>
    <%@ include file="Text.txt" %>
  </body>
</html>

Wird nun die entsprechende Seite mit Hilfe eines Browsers aufgerufen wird der Inhalt der Textdatei in das Ergebnis (HTML) eingebaut.

JSP Direktive include

Mit der Direktive include können auch Dateien eingebunden werden, die weiteren JSP Quelltext enthalten. Die eingebundenen Dateien werden zusammen mit der einbindenden JSP zu einem Servlet kompliliert. Somit haben die eingebundenen Dateien auch Zugriff auf Skiptelemente der einbindenden Datei (z.B. Variablen). Dieses Verhalten wird durch die folgenden Datein index.jsp und toinclude demonstriert. Das nachfolgende Bild zeigt das Ergebnis des Aufrufs der index.jsp.

index.jsp
<html>
  <body>
    <h1>Include directive</h1>
    <%! int i = 2; int j = 3; %>
    <%= i+j %>
    <%@include file="toinclude.txt" %>
  </body>
</html>
            
toinclude.txt
<br>
<%= 5*(i+j) %>
            
JSP Direktive include

JSP Direktive - page

JSP page Direktiven definieren Attribute, welche die gesamte JSP Seite betreffen.
Folgende Attribute sind für die page-Direktive definiert:

autoFlush legt fest, ob der Puffer automatisch abgeschickt werden soll
buffer Festlegung der Puffergröß
contentType Art des Inhaltes (HTML, Text, ...)
errorPage Angabe der Seite, die im Fehlerfall aufgerufen werden soll
extends Definition der Vaterklasse des zu generierenden Servlets
import Import von Java Klassen
info festlegen von Info-Daten für das zu generierende Servlet
isELIgnored wird die Expression Language ignoriert?
isErrorPage handelt es sich um eine Fehlerseite?
isThreadSafe soll das zu generierende Servlet Thread-sicher sein?
language Festlegung der Skriptsprache
pageEncoding Festlegung des Encoding der JSP Seite
session ist die JSP Seite Teil einer Session?

Es können mehrere page-Attribute für eine JSP Seite definiert werden. Aber jedes Attribut (ausser "import") kann für eine Seite nur einmal definiert werden. Das "import"-Attribut kann mehrmals für die Importierung verschiedener Java-Klassen herangezogen werden.

Die Definition der Attribute kann in mehreren und/oder einer page-Direktive erfolgen. Die allgemeine Syntax der page-Direktive lautet:

<%@page Attribut1=... Attribut2= ... ...%>


JSP Direktive - tagLib

Mit Hilfe der JSP - tagLib Direktive werden JSP Custom Tags in die JSP Seite eingebaut. Custom Tags werden auf den Seiten:

Tag - Bibliotheken
JavaServer Pages Standard Tag Library (JSTL)

behandelt.