Übersetzen der JSP-Seite
Im Unterschied zu einem Servlet wird eine JSP-Seite durch den Servlet/JSP-Container (vgl. Kapitel 2.2) übersetzt. Dies ist auch der Grund, weshalb Tomcat einen Java-Compiler benötigt. Ändern Sie eine JSP-Seite, wird dies automatisch
bemerkt und die Seite wird erneut übersetzt.
Vor der Übersetzung wird von Tomcat eine Java-Datei erzeugt, welche das durch die JSP-Seite definierte Servlet enthält.
Tomcat speichert den Quellcode dieses Servlets in einem eigenen Unterverzeichnis:
[TI]\work\Catalina\localhost\[WebAppName]\
[WebAppName]steht für das Verzeichnis Ihrer Webanwendung. Für die JSP-Seite dieses Beispiels
wurde beispielsweise in dem folgenden Verzeichnis die Datei TestJSP_jsp.java erzeugt:
[TI]\work\Catalina\localhost\kap02-2\org\apache\jsp\jsp
TestJSP_jsp.java besitzt den Inhalt (Ausschnitt):
package org.apache.jsp.jsp;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
public final class TestJSP_jsp extends org.apache.jasper.runtime.HttpJspBase
implements org.apache.jasper.runtime.JspSourceDependent
{
...
private String hello = "Willkommen";
...
public void _jspService(HttpServletRequest request,
HttpServletResponse response)
throws java.io.IOException, ServletException
{
...
out.write("<html> ");
out.write(" <head> ");
out.write(" <title> ");
out.write(" ");
out.print( System.getProperty("java.home"));
...
import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
public final class TestJSP_jsp extends org.apache.jasper.runtime.HttpJspBase
implements org.apache.jasper.runtime.JspSourceDependent
{
...
private String hello = "Willkommen";
...
public void _jspService(HttpServletRequest request,
HttpServletResponse response)
throws java.io.IOException, ServletException
{
...
out.write("<html> ");
out.write(" <head> ");
out.write(" <title> ");
out.write(" ");
out.print( System.getProperty("java.home"));
...