Tomcat-Server 3.2 Final installieren

JSP

Übersicht

Tomcat JSP-Server 3.1

Tomcat JSP-Server 3.2

Tomcat JSP-Server 4.0 pre-alpha (und M1)

Tomcat 4.0 Milestone 2

Tomcat 4.0 Milestone 3

Tomcat und Apache-Server

Links

Tomcat 3.2

Diese Seite beschreibt die Installation der Final-Version des Tomcat-JSP-Servers in der Version 3.2 als Stand-alone-Variante.

Erläuterungen zur Konfiguration von Apache-Web-Server und Tomcat-Server, so daß Anfragen für JSP-Seiten automatisch vom Apache-Server zum Tomcat-Server weitergeleitet werden, findet sich hier. Es ist jedoch auch in diesem Fall zunächst eine lauffähige Stand-alone-Version des Tomcat-Servers zu installieren.

Die benötigten Archive sind vom Jakarta-Server der Apache-Group zu beziehen.

Voraussetzungen

Benötigte Archive:
Ant 1.2

Ant 1.2 ist die aktuelle Version des in Java implementierten Make-Tools, das zum Übersetzen der verschiedenen Pakete notwwendig ist. Die Sourcen befinden sich in einem Archiv namens jakarta-ant-src.tar.gz.

Servlet-API

Die Servlet-API, welche vom Tomcat-Server verwendet wird, ist in einem zusätzlichen Archiv enthalten: jakarta-servletapi-3.2-src.tar.gz.

Die Servlet-API wird bereits beim Übersetzen des Tomcat-Servers benötigt und ist aus diesem Grund vorher zu installieren.

Anm.: Es sollte in jedem Fall die aktuelle Servlet-API Version installiert werden, die sich auf der gleichen Download-Seite wie die Tomcat-Sourcen befindet. Nur in diesem Fall ist gewährleistet, daß beide Programme problemlos zusammenarbeiten.

Tomcat

Die Source-Dateien des Tomcat-JSP-Servers. Die Final-Version findet sich zusammengefaßt im Archiv jakarta-tomcat-3.2-src.tar.gz.

Anm.: Die Bezeichnungen der Archive können Versions-abhängig variieren, der oben angegebene ist der der zur Zeit aktuellen Version.

Optionale Archive:
Tools
Taglibs
Struts
....

Installieren

Die Archive jakarta-tomcat-3.2-src.tar.gz und jakarta-servletapi-3.2-src.tar.gz werden in ein für den Server angelegtes Basis-Verzeichnis kopiert.
Als Beispiel wird hier das Verzeichnis

/opt/server

verwendet.

Das Make-Tool Ant wird in ein weiteres, speziell dafür angelegtes Verzeichnis kopiert, das unter dem oben genannten angelegt wird, z.B.:

/opt/server/ant12
Archive kopieren: cp jakarta-tomcat-3.2-src.tar.gz /opt/server
cp jakarta-servletapi-3.2-src.tar.gz /opt/server
cp jakarta-ant-src.tar.gz /opt/server/ant12
Alle kopierten Archive werden anschließend in diesen Verzeichnissen entpackt:
Archive entpacken: tar xzf jakarta-tomcat-3.2-src.tar.gz
tar xzf jakarta-servletapi-3.2-src.tar.gz
tar xzf jakarta-ant-src.tar.gz

 ANT übersetzen

Der folgende Schritt besteht darin, das Make-Tool Ant zu übersetzen. Dies geschieht in dem Verzeichnis, in dem das Archiv jakarta-ant-src.tar.gz entpackt wurde, z.B. ant12.
Zu beachten ist hierbei, daß beim Entpacken der aktuellen Version von Ant kein eigenes Verzeichnis mehr erzeugt wird, dies muß vor dem Entpacken "von Hand" erzeugt und das Archiv dort hinein kopiert werden.
Zum Übersetzen sind folgende Voraussetzungen notwendig:
Java-JDK Ein installiertes Java-JDK muß vorhanden sein, da es sich bei diesem Tool um ein reines Java-Programm handelt, das auch mit einem Java-Compiler übersetzt werden muß.
Eine Liste aktueller JDKs findet sich hier.
JAVA_HOME Die JAVA_HOME-Umgebungsvariable muß gesetzt sein.
Zum Compilieren von Ant ist hier der Pfad zum JDK-Basisverzeichnis aufzunehmen. In einer bash-Shell unter Linux kann diese Variable über folgende Anweisung gesetzt werden. Es wird angenommen, daß das JDK im Verzichnis /opt/jdk1.2.2 installiert wurde:
export JAVA_HOME=/opt/jdk1.2.2
Durch die gesetzte JAVA_HOME-Umgebungsvariable findet das build-Skript automatisch das Java-Compiler-Archiv tools.jar, so daß dieses nicht mehr notwendigerweise in den CLASSPATH aufgenommen werden muß.

 Servlet-API für Tomcat 3.2 übersetzen

XML-Parser

Zum Übersetzen des Tomcat-Servers sowie der Servlet-API wird ein JAXP-konformer XML-Parser benötigt. Der Pfad zu den entsprechenden .jar-Archiven kann in den CLASSPATH aufgenommen werden.

Zu empfehlen ist der Einsatz der neuen Version der Java API for XML (JAXP) von Sun.

Zum Beispiel:

export CLASSPATH=$CLASSPATH:/opt/xml/jaxp-1.1/jaxp.jar:\
/opt/jaxp-1.1/crimson.jar

Die Vorbereitungen zum Compilieren der Servlet-API sind damit bereits abgeschlossen.

Vorausgesetzt wird dabei, daß die Umgebungsvariable JAVA_HOME noch wie oben beschrieben gesetzt ist.

Zum Starten des Compiler-Laufs muß nun in das Verzeichnis jakarta-servletapi-3.2-src gewechselt werden:

In das Source Verzeichnis der Servlet-API wechseln cd ../jakarta-servletapi-3.2-src
In diesem Verzeichnis muß nur noch das Skript build.sh ausgeführt werden:
Servlet-API Übersetzen Der Übersetzungsvorgang wird aus dem Verzeichnis jakarta-servletapi-3.2-src durch Aufruf des folgenden Shell-Skripts durchgeführt:
./build.sh erzeugt die .class-Dateien
./build.sh dist erzeugt das Archiv servlet.jar im Verzeichnis lib sowie die JavaDoc-Dokumentationen.
Achtung! Wenn das Compilieren fehlschlägt, kann es beim anschließenden Neu-Compilieren zu Fehlermeldungen kommen, die evtl. vermieden werden, wenn zuvor alle bisher erzeugten Dateien gelöscht werden. Diese befinden sich im Verzeichnis
build/servletapi
und
jakarta-serveltapi-3.2-src/lib

 Tomcat 3.2 übersetzen

XML-Parser Es wird auch hier wieder der oben erwähnte XML-Parser benötigt, Installation siehe bei Servlet-API.
ANT_HOME

Zum Übersetzen muß die Umgebungsvariable ANT_HOME auf das build-Verzeichnis des Make-Tools Ant gesetzt werden, z.B.:

export ANT_HOME=/opt/server/build/ant
build.xml

Die Konfigurations-Datei build.xml enthält einige fehlerhafte Angaben, die sich offensichtlich noch auf ältere Versionen des Tomcat-Servers beziehen. Diese müssen vor Ausführen des build-Skripts ggf. angepaßt werden:

<!-- ==================== Initialization properties ===================== -->
<property name="ant.home" value="../build/ant"/>
<property name="build.compiler" value="classic"/>
<property name="debug" value="on"/>
<property name="j2ee.home" value="../../j2ee/build/unix"/>        
<property name="jaxp" value="../jaxp-1.0.1" />
<property name="optimize" value="true" />
<property name="servlet.jar" value="../jakarta-servletapi-3.2-src/lib/servlet.jar"/>
<property name="tomcat.build" value="../build/tomcat"/>
<property name="tomcat.dist" value="../dist/tomcat"/>
				  
Die Vorbereitungen zum Compilieren des JSP-Servers sind damit abgeschlossen.
Im Verzeichnis jakarta-tomcat-3.2-src muß nur noch das Skript build.sh ausgeführt werden:
Tomcat 3.2 compilieren ./build.sh
Achtung!

Auch hier gilt die Anmerkung von oben, nach fehlgeschlagenen Übersetzungsversuchen die erzeugten Dateien und Verzeichnisse zunächst zu löschen und erst danach einen erneuten Übersetzungslauf zu starten.

Diese befinden sich im Verzeichnis

build/tomcat
Das Verzeichnis build/tomcatist die Standard-Einstellung für alle Versionen des Tomcat-Servers. Ist bereits ein Tomcat-Server installiert, wird diese Installation überschrieben. Aus diesem Grund kann es sinnvoll sein, ein neues Zielverzeichnis für die neue Installation festzulegen.
Zielverzeichnis ändern

Standardeinstellung der Server-Installation ist das Verzeichnis build/tomcat.

Sollen mehrere Versionen des Servers parallel installiert werden, kann jeder ein eigenes Verzeichnis zugewiesen werden. Zu diesem Zweck muß vor dem Ausführen des Skripts build.sh die Konfigurations-Datei build.xml entsprechend angepaßt werden.

Im folgenden Beispiel wurde das Zielverzeichnis in ../build/tomcat32final geändert:

<!-- ==================== Initialization properties ===================== -->
<property name="ant.home" value="../build/ant"/>
<property name="build.compiler" value="classic"/>
<property name="debug" value="on"/>
<property name="j2ee.home" value="../../j2ee/build/unix"/>        
<property name="jaxp" value="../jaxp-1.0.1" />
<property name="optimize" value="true" />
<property name="servlet.jar" value="../jakarta-servletapi-3.2-src/lib/servlet.jar"/>
<property name="tomcat.build" value="../build/tomcat32final"/>
<property name="tomcat.dist" value="../dist/tomcat32final"/>
				  

 Tomcat starten

Während des Compiler-Laufs wird, falls noch nicht vorhanden, das Verzeichnis build auf der gleichen Ebene wie die Installationsverzeichnisse jakarta-servletapi-3.2-src und jakarta-tomcat-3.2-src erstellt. Darin enthalten ist das Verzeichnis tomcat bzw. das in build.xml geänderte Zielverzeichnis, in das die Klassen- und Konfigurations-Dateien sowie Start-Skripte des Tomcat-Server kopiert werden.
Zum Starten des Servers wird in das bin-Verzeichnis der Tomcat-Installation gewechselt:
In das Tomcat Verzeichnis wechseln
cd ../build/tomcat/bin/

bzw.
cd ../build/tomcat32final/bin/
wenn das Default-Verzeichnis wie oben vorgeschlagen geändert wurde.
Der Tomcat-Server ist fertig compiliert und enthält bereits eine Standard-Konfiguration. Somit kann der Server nun versuchsweise gestartet und mit Hilfe der mitgelieferten Beispiele getestet werden.
Tomcat starten ./startup.sh
Während des Startvorgangs werden die Einstellungen für den CLASSPATH und LOG-Files gelistet, wie sie vom Server verwendet werden. Eventuelle Fehler können hier leicht lokalisiert werden. Normalerweise sollte der Server jedoch mit den Default-Einstellungen bereits problemlos starten.
Die Funktion kann getestet werden, indem die Startseite des Servers mit Hilfe eines beliebigen Web-Browsers aufgerufen wird:

 Testlauf

Tomcat testen Im Browser kann die Tomcat-Start-Seite über die Adresse http://localhost:8080 aufgerufen werden.
Abbildung der Startseite des Tomcat-Servers.
Wird diese Startseite in dieser Form angezeigt, war die Installation des Servers erfolgreich. Der Server empfängt Anfragen über den Default-Port 8080 und überträgt auch Daten zurück zum Client.
Als nächstes bleibt noch zu prüfen, ob JSP-Seiten compiliert und angezeigt werden können. Da hierzu Zugriffe auf den Java-Compiler notwendig sind, besteht hier noch eine potentielle Fehlerquelle.
Der Test ist am einfachsten durchzuführen, indem einige der JSP-Beispiele des Servers aufgerufen werden. Die Beispiel-Seite kann über den Link JSP Examples erreicht werden, siehe dazu die Abbildung der Startseite.
JSP Beispiel Seite anzeigen Die Beispielseite kann über den entsprechenden Link oder die Adresse
http://localhost:8080/examples/jsp
erreicht werden.
Im Browser sollte nun eine Index-Seite mit den JSP-Beispielen des Tomcat-Servers zu sehen sein.
JSP Beispiel ausführen Ein beliebiges Beispiel aus der Liste kann zum Testen verwendet werden. Das Snoop-Beispiel liefert einige Angaben über die Übertragungsmethode und das Betriebssystem.

 Tomcat beenden

Zum Beenden des Servers existiert im bin-Verzeichnis das Skript shutdown.sh:
Tomcat beenden ./shutdown.sh

Ronald Pfeiffer
Last modified: Sun Dec 10 00:36:31 CET 2000