Advanced   Java   Services
Connecting Apache 2.0.45 and Tomcat4.1.24 with mod_jk2 to run Servlets and JavaServerPages
Back Next Up Home
Wie der Indianer den Kater zum Schnurren bringt

I  Download der Dateien


1)  Apache 2.0.xx



Die aktuelle Version (zur Zeit 2.0.47) steht unter

http://www.apache.org/dist/httpd/binaries/win32   als

apache_2.0.xx-win32-x86-no_ssl.msi    MSI Installer Package

oder

apache_2.0.x-win32-x86-no_ssl.exe    Installer Package

zum Download bereit.

Der Microsoft Installer ist auf älteren Windows-Platformen nicht verfügbar. Ein Download ist sehr empfehlenswert (kleinere Dateien, meist problemlose Installation) Die neueste Version kann man unter

http://www.microsoft.com/downloads/release.asp?ReleaseID=17344

Windows Installer v1.10 for Windows NT 4.0 (x86) (already built into Windows 2000)

bzw.

http://www.microsoft.com/downloads/release.asp?ReleaseID=17343

Windows Installer v1.10 for Windows 95 and 98 (already built into Windows ME)

von Microsoft herunterladen


2)  Tomcat 4.x.x   (letztes 4 release : 4.1.29)


Tomcat hat seine Pfade neu strukturiert. Alle release-Versionen sind nun zu finden unter

http://jakarta.apache.org/site/binindex.cgi

Hier sucht man sich einen mirror aus und wählt Tomcat 4.1.29 . Die Beschreibung auf dieser Seite ist für die Versionen 4.1.xx !


4)  Servlet API 2.3 und Java class-files


Man findet beides unter

http://java.sun.com/products/servlet/download.html

servlet-2_3-fcs-classfiles.zip
servlet-2_3-fcs-docs.zip


servlet-2_3-fcs-classfiles.zip wird umbenannt oder kopiert in servlet-2_3-fcs-classfiles.jar und ins Verzeichnis c:\j2sdk1.4.x\jre\lib\ext gelegt. Damit sind alle zur Entwicklung von Servlets notwendigen Klassen über import javax.servlet.* ; und import javax.servlet.http.* ; ansprechbar.

servlet-2_3-fcs-docs.zip entpackt man in ein eigenes Verzeichnis.


4)  mod_jk2


Auch dieses Verzeichnis hat sich geändert, es ist fast noch schwerer zu finden als das alte! Die Tomcatleute haben mod_jk2 so gut versteckt, daß ich googeln mußte...

jk2-Module finden sich unter

http://apache.roweboat.net/jakarta/tomcat-connectors/jk2/binaries/win32

Hier wählt man

jakarta-tomcat-connectors-jk2.0.2-win32-apache2.0.43.zip

Die Datei enthält das Modul mod_jk2-2.0.43.dll. Es ist für Apache 2.0.xx entwickelt worden und arbeitet problemlos und zuverlässig.


Hinweis:

Die Versionen 4.1.xx von Tomcat benötigt das Hilfstool Ant nicht mehr. Bei der Installation werden die connectors automatisch installiert. Tomcat ist so vorkonfiguriert, daß es bereits einen ajp13 listener auf port 8009 einrichtet, der mit dem jk2 modul von Apache 2.0.4x zusammenarbeiten kann. Da diese downloads für die neuere Installation nicht mehr gebraucht werden, stehen sie auf der nächsten Seite, die die ältere (mühselige) Installation beschreibt.



II  Installation


Voraussetzung für Tomcat ist eine intakte JavaUmgebung (am besten gleich die aktuelle) und eine richtig gesetzte Umgebungsvariabel JAVA_HOME, z.Bsp.

JAVA_HOME    c:\j2sdk1.4.x

Das Herstellen der Verbinding zwischen Apache und Tomcat hat sich drastisch vereinfacht. Da die connectors automatisch von Tomcat installiert werden, braucht man das Hilfstool Ant nicht mehr.


1)  Tomcat 4.1.xx


Bei der Installation erkennt Tomcat die JavaUmgebung an Hand des Pfades von JAVA_HOME. Es ist sinnvoll Apache und Tomcat unter einem Verzeichnis zu installieren und bei der Installation entsprechende Eingaben zu machen. Mein Pfad zu Tomcat lautet c:\ApacheTomcat\Tomcat4. Also habe ich TOMCAT_HOME wie folgt gesetzt.

TOMCAT_HOME    c:\ApacheTomcat\Tomcat4

Ältere Versionen von Tomcat und Apache stören sich bei einer Verbindung an Blanks in Pfaden, deshalb habe ich auch bei dieser Installation vorsichtshalber Pfade ohne Leerzeichen angegeben. Die Eingabe der Adresse http://127.0.0.1:8080 in einen Browser sollte die Startseite von Tomcat bringen, da Tomcat auf den Port 8080 vorkonfiguriert ist. Die dort über Links zu erreichenden Servletbeispiele sollten dann laufen.

Verzeichnis für .class Dateien (Servlets)

%TOMCAT_HOME%\WEPAPPS\examples\WEB-INF\classes

Ort der Datei web.xml (Notwendig für evtl. Listenereinträge)

%TOMCAT_HOME%\WEPAPPS\examples\WEB-INF\web.xml

Verzeichnis der Startdatei index.jsp

%TOMCAT_HOME%\WEPAPPS\ROOT


2)  Apache 2.0.4x


Zu (irgend) einem gewählten Verzeichnis installiert sich Apache immer in ein Unterverzeichnis Apache2. Will man also etwa Apache im Verzeichnis c:\ApacheTomcat\Apache2 installieren, so darf man als Verzeichnis bei der Installation nur c:\ApacheTomcat angeben. Des weiteren muß man bei der Installation eine Serveradresse der Form xxx.yyy bzw. www.xxx.yyy eingeben. Für lokale Testinstallationen ist es egal was man hier eingibt. Zudem kann man die Eingaben später in der Konfigurierungsdatei httpd.conf immer ändern. Die fehlerfreie Installation beendet sich mit einem automatischen Start von Apache. Rechts unten auf der Taskleiste sollte die Apachefeder mit einem kleinen grünen Dreieck erscheinen. Über diesen Monitor kann man den Server ein- und ausschalten. Die Umgebungsvariable APACHE_HOME sollte gesetzt werden. bei mir lautet sie

APACHE_HOME    c:\ApacheTomcat\Apache2

Die Eingabe der Adresse http://127.0.0.1 in einen Browser sollte die Startseite von Apache bringen (Defaultport 80).

Verzeichnis für .html Dateien

%APACHE_HOME%\htdocs

cgi-bin Verzeichnis

%APACHE_HOME%\cgi-bin

Pfad zur KonfigurierungsDatei httpd.conf

%APACHE_HOME%\conf

Verzeichnis der module

%APACHE_HOME%\modules


III  Connecting Apache 2.0.4x and Tomcat 4.1.2x



### Start workers2.properties ###

# Port für Servletweiterleitung
[channel.socket:localhost:8009]
info=Ajp13 forwarding over socket
tomcatId=localhost:8009

# worker angeben
[ajp13:localhost:8009]
channel=channel.socket:localhost:8009

# Apache das Verzeichnis von Tomcat in webapps
# bekanntgeben, wo die .class Dateien liegen
[uri:/examples/*]
info=Map the whole webapp
worker=ajp13:localhost:8009

# wem der Name examples nicht gefällt, der kann hier auch auf ein
# anderes Verzeichnis in webapps abbilden, es muß natürlich existieren
# und die gleiche Struktur haben wie das Verzeichnis examples
# etwa wie folgt
#[uri:/exec/*]
#info=Map the whole webapp
#worker=ajp13:localhost:8009


[shm]
file=${serverRoot}/logs/shm.file
size=1048576

[status:status]
# Uri mapping
[uri:/jkstatus/*]
worker=status:status

### End workers2.properties ###

Die Beschreibung der alten Installation folgt auf der nächsten Seite.

top Back Next Up Home