Inhalt

implizite Objekte

Innerhalb einer Java Server Page stehen dem Programmierer einige sogenannte implizite Objekte bereit, um Zugriff auf wichtige Ressourcen des Webservers und der JSP-Umgebung zu erhalten. Diese Objekte werden implizit durch den JSP-Server erzeugt und stehen so stets bereit.
Die einzelnen implizizen Objekte werden im folgenden genauer beschrieben:


request - Objekt

Um die Informationen über die vom Client gestellten Anfragen zu erhalten, wird das Objekt request verwendet. Seine Klasse implementiert das Interface javax.servlet.http.HttpServletRequest und ermöglicht Zugang zu den HTTP-Headern der Anfrage, den Cookies und den Anfrage-Parametern.

Zusammenstellung der wichtigsten Methoden:

Rückgabewert Methode
java.lang.String getContextPath()
Gibt den Context-Pfad URL des Request-Objekts zurück.
javax.servlet.http.Cookie[] getCookies()
Liefert ein Array zurück, das alle Cookies enthält, die der Client mitgesendet hat.
long getDateHeader(java.lang.String name)
Liefert das Datum des Request-Headers zurück, hier in der klassischen long-Form.
java.lang.String getHeader(java.lang.String name)
Liefert die Daten des gewählten Request-Headers als String zurück.
java.lang.String getMethod()
Liefert den Namen der HTTP-Methode zurück, die den Request aufgerufen hat, beispielsweise GET, POST oder PUT.
java.lang.String getPathInfo()
Liefert eine Extra-Pfad-Information zurück, die mit dem URL des Clients verbunden ist, der den Request gestellt hat.
java.lang.String getRequestedSessionId()
Liefert die ID der Sitzung des Clients zurück.
javax.servlet.http.HttpSession getSession()
Liefert die aktuelle Session zurück, die mit dem Request verbunden ist. Falls der Request keine Session hat, wird eine kreiert.


response - Objekt

Dieses Objekt beinhaltet die Informationen der Antwort an den Client. Seine Klasse implementiert das Interface javax.servlet.http.HttpServletResponse und ermöglicht das Setzen der HTTP-Antwort-Header, die Angabe von HTTP-Statuscodes und das erstellen von Cookies und Anhängen an die Antwort.

Zusammenstellung der wichtigsten Methoden:

Rückgabewert Methode
void addCookie(Cookie cookie)
Fügt ein spezifiziertes Cookie in die Response ein.
void addHeader(java.lang.String name, java.lang.String value)
Fügt in den Response-Header einen spezifizieren Namen und den dazugehörenden Wert ein.
java.lang.String encodeURL(java.lang.String url)
Entschlüsselt den spezifizierten URL unter Zuhilfenahme der Session-ID oder, falls keine Entschlüsselung notwendig ist, liefert es den URL unverä ndert zurück.
(s. Sitzungsverfolgung)
void sendError(int sc)
Sendet eine Fehler-Antwort unter Benutzung des Statuscodes sc an den Client zurück.
void setHeader(java.lang.String name, java.lang.String value)
Setzt einen Antwort-Header mit Namen und Wert.
void setStatus(int sc)
Setzt den Statuscode für die aktuelle Response


pageContext - Objekt

Das implizite Objekt pageContext der Klasse javax.servlet.jsp.PageContext ermöglicht den Zugriff auf die verschiedenen Gültigkeitsbereiche (scopes) der JSP: Ausserdem bietet es Methoden an, Informationen über die Servlet-Umgebung bzw. den verwendeten Server zu erreichen.
Intern wird das pageContext-Objekt dazu benutzt, die anderen impliziten Objekte zu erzeugen.

Zusammenstellung der wichtigsten Methoden:

Rückgabewert Methode
void jspDestroy()
Diese Methode wird standartmäßig beim Beenden der Java Server Page aufgerufen.
void jspInit()
Diese Methode wird automatisch zum Initialisieren beim Start der Java Server Page aufgerufen.


session - Objekt

Dieses implizite Objekt gehört zu einer Klasse, die das Interface javax.servlet.http.HttpSession implementiert.
Es bietet Möglichkeiten, Informationen wie z.B. die Lebensdauer oder die Erstellungszeit der Sitzung abzurufen, die Sitzungsverfolgung durch URL-Rewriting zu vereinfachen und eigene Informationen zur aktuellen Sitzung zu speichern bzw. zu lesen.
(s. Sitzungsverfolgung)

Zusammenstellung der wichtigsten Methoden:

Rückgabewert Methode
java.lang.Object getAttribute(java.lang.String name)
Liefert das verbundene Objekt für den spezifizierten Namen in der Session zurück oder NULL, wenn dieses Objekt nicht existiert.
java.util.Enumeration getAttributeNames()
Liefert eine Aufzählung von String-Objekten zurück, die alle Namen der Objekte enthält, die sich in der Session befinden.
java.lang.String getId()
Liefert die eindeutige ID der Session als String zurück.
java.lang.Object getValue(java.lang.String name)
Liefert das durch den Namen spezifizierte Objekt der zugehörigen Session zurück.
java.lang.String[] getValueNames()
Liefert alle Namen der Objekte in der Session zurück.
void removeAttribute(java.lang.String name)
Löscht das durch den Namen spezifizierte Objekt aus der Session
void setAttribute(java.lang.String name, java.lang.Object value)
Fügt das angegebene Objekt mit dem entsprechenden Namen in die Session ein.


application - Objekt

Dieses Objekt stammt vom Interface javax.servlet.ServletContext ab und dient dem Zugriff auf Ressourcen wie z.B. Dateien oder dem Abrufen von Informationen über den verwendeten Servlet-Container oder die Version der Servlet-API. Es beherbergt ausserdem Funktionen zur Protokollierung.

Zusammenstellung der wichtigsten Methoden:

Rückgabewert Methode
java.lang.Object getAttribute(java.lang.String name)
Gibt die Servlet-Container-Attribute, spezifiziert durch den Namen, zurück oder NULL, wenn dieses nicht vorhanden ist.
java.lang.String getInitParameter(java.lang.String name)
Liefert einen String zurück, der den Wert des zugehörigen Initialisierungs-Parameters beinhaltet, der durch den Namen spezifiziert wird.
int getMajorVersion()
Liefert die Hauptversionsnummer der Java-Servlet-API und des Servlet-Containers zurück.
java.io.InputStream getRessourceAsStream(java.lang.String path)
Liefert ein InputStream-Objekt zurück, spezifiziert durch den Pfad der Ressource.
java.lang.String getServerInfo()
Liefert den Namen und die Versionsnummer des Servlet-Containers zurück.
void log(java.lang.String msg)
Schreibt die angegebene Nachricht in die Server Log-Datei.


out - Objekt

Das Objekt out stammt von der Klasse javax.servlet.jsp.JspWriter ab. Es wird verwendet, um direkte Ausgaben an den Client durchzuführen. Es bietet ausserdem Methoden zur Verwaltung des Ausgabe-Puffers an.

Zusammenstellung der wichtigsten Methoden:

Rückgabewert Methode
void clear()
Leert den Inhalt des Puffers
void close()
Schließt den aktuellen Datenstrom. Der Puffer-Inhalt wird vorher noch übertragen.
void flush()
Veranlasst eine sofortige Übertragung der im Puffer enthaltenen Daten.
int getBufferedSize()
Ermittelt die Größe des Ausgabe-Puffers
int getRemaining()
Ermittelt die Größe der nicht benutzten Bytes im Puffer.
boolean isAutoFlush()
Ermittelt, ob Autoflush gesetzt wurde.
(s. page-Direktive / autoFlush)
void newLine()
Schreibt einen Zeilentrenner in die Ausgabe
void print( various simple types )
Schreibt die verschiedenen einfachen Typen in die Ausgabe
void println( various simple types )
Schreibt die Variable in die Ausgabe und beendet die Zeile.


config - Objekt

Das Objekt out stammt vom Interface javax.servlet.ServletConfig ab. Es wird dazu verwendet, die Konfigurations-Parameter des Servlets auszulesen.

Zusammenstellung der Methoden:

Rückgabewert Methode
java.lang.String getInitParameter(java.lang.String name)
Liefert den String mit dem Wert des benannten Initialisierungs-Parameters zurück, oder NULL, wenn der Parameter nicht existiert.
java.util.Enumeration getInitParameterNames()
Liefert die Namen aller Initialisierungs-Parameter des aktuellen Servlets als String-Objekte in Form einer Enumeration zurück.
javax.servlet.ServletContext getServletContext()
Liefert eine Referenz auf das momentan ausgeführte Servlet-Context zurück.
java.lang.String getServletName()
Liefert den Namen der Instanz des aktuellen Servlets zurück.


page - Objekt

Das page-Objekt ist eine Referenz auf das Servlet-Objekt, das die Anfrage bearbeitet. Die zugehörige Klasse ist abhängig von der verwendeten Server-Software.


exception - Objekt

Es handelt sich hierbei um ein Objekt der Exception-Klasse javax.servlet.jsp.JspException und steht nur zur Fehlerbehandlung in speziell dafür vorgesehenen Java Server Pages zur verfügung.

Das Objekt bietet nur die folgende Methode:

Rückgabewert Methode
java.lang.Throwable getRootCause()
Liefert die Exception zurück, die in der Java Server Page auftrat.

Inhalt