• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Tomcat will nicht auf Debian Sarge

Magnus

Newbie
Hallo Leute,

ich versuche seit einiger Zeit, Tomcat auf Debian Sarge zum Laufen zu bringen. Leider gibt es Probleme mit dem JDK: Egal welches ich installiere, es wird nicht als solches erkannt bzw. anerkannt.

Das ursprüngliche 'apt-get install tomcat4' installierte auch kaffe. Daneben habe ich über www.debian-unofficial.org auch j2se1.4 und j2se6.0 ausprobiert, ohne Erfolg.

Beim Aufruf von /etc/init.d/tomcat4 start wird (nach Setzen von JAVA_HOME auf /usr/lib/j2se1.4) gemeldet, dass Tomcat gestartet wurde, aber es läuft kein Prozess und die Testseite ist auch nicht erreichbar.

Beim Aufruf von /usr/share/tomcat4/bin/catalina.sh wird gemeldet, dass JAVA_HOME auf ein JDK zeigen muss, nicht auf ein JRE. Als solches wird das Paket aber beschrieben.

Hat jemand einen Tipp, wie man Tomcat unter Sarge am besten zum Laufen bringt bzw. welche Java-Version über welches Paket zu installieren ist? Oder ganz grundsätzlich: Mit oder ohne Apache sei erst mal egal, welche Konfiguration ist verbreitet bzw. bewährt?

Grüße,
Magnus
 
OP
M

Magnus

Newbie
Hallo nbkr!

Den Grund hat mir Tomcat ja schon genannt: Das JDK wird nicht als solches anerkannt: "JAVA_HOME should point to a JDK not a JRE"

Allein der Aufruf von $CATALINA/bin/setclasspath.sh liefert diese Meldung, und das wird von den anderen Skripten aufgerufen.

Das Skript testet, ob java und javac im Verzeichnis $JAVA_HOME/bin liegt. Das tut es bei mir aber nicht, denn es liegt in /usr/bin. Deshalb meint catalina, dass ich kein JDK habe.

Bevor ich da nun weiter herum bastele und die Tomcat-Skripts verändere, wollte ich halt fragen, ob es eine bewährte Konfiguration gibt, sprich Kombination aus Debian, Tomcat und JDK.

Grüße,
Magnus
 

nbkr

Guru
Mir persönlich nicht bekannt. Ich hätte einfach das JDK direkt von java.sun.com runtergeladen und das verwendet. Das parkt alles in einen Ordner.

Alternativ einfach ein paar Symlinks anlegen.
 
A

Anonymous

Gast
Magnus schrieb:
Das Skript testet, ob java und javac im Verzeichnis $JAVA_HOME/bin liegt. Das tut es bei mir aber nicht, denn es liegt in /usr/bin. Deshalb meint catalina, dass ich kein JDK habe.

Wieso basteln, warum setzt du nicht einfach einen Softlink?
 

homer65

Hacker
Hallo,
soweit mir bekannt ist, laufen neuere Tomcat Versionen nicht mit Java 1.4, sie benötigen Java 1.5. Es daher wohl besser sich das neuste JDK von http://www.sun.com herunterzuladen.
Habe auch mal notiert, wie ich beim letzten Mal Tomcat installiert habe. Poste das Ganze mal hier.

Ausgangspunkt ist die Datei jakarta-tomcat-5.5.9.tar.gz
tar xfzv jakarta-tomcat-5.5.9.tar.gz
Erstellt wird Directory jakarta-tomcat-5.5.9
cd jakarta-tomcat-5.5.9
cd bin
vi startup.sh
Einfügen der folgenden Zeilen:
CATALINA_HOME="/home/christian/jakarta-tomcat-5.5.9"
JAVA_HOME="/usr/java/jdk1.5.0_03"
export CATALINA_HOME
export JAVA_HOME
vi shutdown.sh
Einfügen wie oben
Starten und Stoppen von Tomcat geht dann mit:
/home/christian/jakarta-tomcat-5.5.9/bin/startup.sh
/home/christian/jakarta-tomcat-5.5.9/bin/shutdown.sh

Du mußt natürlich alles an deine Gegebenheiten anpassen.
Hoffe es hilft dir weiter.
Christian
 
OP
M

Magnus

Newbie
Hallo Leute,

danke für Eure Tipps! Inzwischen habe ich das JDK von Blackdown.org installiert und komme einen Schritt weiter. Der Server startet nun problemlos mit /etc/init.d/tomcat4 start. Beim Zugriff auf http://localhost:8009 allerdings wird bei mit folgendes ins Log geschrieben:

Using CATALINA_BASE: /var/lib/tomcat4
Using CATALINA_HOME: /usr/share/tomcat4
Using CATALINA_TMPDIR: /var/lib/tomcat4/temp
Using JAVA_HOME: /usr/lib/j2se/1.4
Using Security Manager
Created MBeanServer with ID: 1b8d6f7:1099861c063:-8000:magnus:1
Feb 23, 2006 8:27:57 PM org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8180
Starting service Tomcat-Standalone
Apache Tomcat/4.1
The scratchDir you specified: /var/lib/tomcat4/work/Standalone/localhost/examples is unusable.
The scratchDir you specified: /var/lib/tomcat4/work/Standalone/localhost/_ is unusable.
The scratchDir you specified: /var/lib/tomcat4/work/Standalone/localhost/webdav is unusable.
Feb 23, 2006 8:27:58 PM org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8180
Feb 23, 2006 8:27:58 PM org.apache.jk.common.ChannelSocket init
INFO: JK2: ajp13 listening on /0.0.0.0:8009
Feb 23, 2006 8:27:58 PM org.apache.jk.server.JkMain start
INFO: Jk running ID=0 time=25/20 config=/var/lib/tomcat4/conf/jk2.properties
Feb 23, 2006 8:28:44 PM org.apache.jk.common.MsgAjp processHeader
SEVERE: BAD packet signature 18245
47 45 54 20 00 00 00 00 00 00 00 00 00 00 00 00 | GET ............
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 | ................
...

Ich sehe da zwei Fehler, die unusable ScratchDir und die Bad Packet Signature. Was hat das zu bedeuten?

homer65 schrieb:
Starten und Stoppen von Tomcat geht dann mit:
/home/christian/jakarta-tomcat-5.5.9/bin/startup.sh
/home/christian/jakarta-tomcat-5.5.9/bin/shutdown.sh

Worin liegt eigentlich der Unterschied beim Starten/Stoppen über
/etc/init.d/tomcat4,
/usr/share/tomcat4/catalina.sh und
/usr/share/tomcat4/startup.sh bzw.
/usr/share/tomcat4/shutdown.sh?

Soweit ich sehe, rufen die sich alle gegenseitig auf. Ich bevorzuge die erste Variante, weil die auch beim Booten ausgeführt wird. Aber das dürfte wohl nicht mein Problem sein.

Grüße,
Magnus
 
Oben