Tomcat funktioniert nicht so wie er sollte

Status
Nicht offen für weitere Antworten.

PeterRRR

Mitglied
Hallo!

Ich lerne gerade das Programmieren von dynamischen Webanwendungen mit JSP. Als Server nutze ich Tomcat. Meine erste kleine (Test)Anwendung habe ich mit Eclipse erstellt und das hat auch problemlos funktioniert. Jetzt möchte bzw. muss ich aber den Tomcat-Server OHNE Eclipse verwenden, nur leider hab ich dabei folgendes Problem:

Das Starten des Servers (unter Windows) funktioniert problemlos und auch die Beispiel-JSPs können ganz normal aufgerufen werden. Sobald ich aber den WebContent-Ordner aus dem oben erwähnten Eclipse-Projekt in den webapps-Ordner von Tomcat kopiere und die in Eclipse erstellte und problemlos funktionierende JSP-Seite manuell im Browser aufrufe, bekommte ich den Fehler 404 von Tomcat. Auch wenn ich ein vorhandenes Beispiel-JSP im Explorer umbenenne und es dann aufrufen versuche, bekomme ich den selben Fehler.

Wo liegt da der Fehler?
Danke schon im Voraus für eure Hilfe!

lg
Peter
 
noch ein kleiner Tip, der zwar nicht direkt dein Problem löst, aber trotzdem viel Zeit und Fehlerquellen spart:

du solltest dir unbedingt das hin-und herkopieren deiner Dateien sparen.
Dafür gibt es 2 Möglichkeiten:
1. Du hast deine Sourcen unter tomcat_install_dir/webapps/NameDerWebapplication/
Dann legst dafür im Eclipse einen Folder an, der einen Link auf das Dateisystem hat
2. Du hast deine Sourcen im Eclipse Workspace. Dann ergänzt du in der server.xml ungefähr so was:

<Context path="/NameDerWebapplication" docBase="c:/projekte/NameDerWebapplication/src/workspace/WebContent" debug="0" reloadable="true" crossContext="true">
<Logger className="org.apache.catalina.logger.FileLogger" prefix="repertory" suffix=".txt"/>
....
</Context>

Probier das mal, vielleicht sind dann auch deine 404 Probleme weg....
Carina
 
Ja, ich hab das mit den Verzeichnisnamen schon vorher genau so gemacht gehabt und nein, ich hab den Namen der Anwendung natürlich nicht vergessen. Trotzdem funktioniert es nicht. Auch wenn es im Root-Verzeichnis liegt, geht's nicht...

lg
Peter
 
Deine Verzeichnisstruktur sollte vom Prinzip her so aussehen:

<tomcat_home>
-- <webapps>
----<meineAnwendung>
------ test.jsp
------ <WEB-INF>
-------- web.xml

Aufruf der Anwendung mit:
http://localhost:8080/meineAnwendung/test.jsp

Achtung: auf Groß- und Kleinschreibung achten!

Wichtig ist, dass das WEB-INF-Verzeichnis direkt im Anwendungsverzeichnis liegt und die Datei web.xml enthält, damit der Tomcat die Anwendung korrekt installieren kann.

Sollte das immer noch nicht funktionieren, lohnt sich ein Blick in die Log-Dateien unter <tomcat_home>/logs. Vielleicht konnte der Tomcat die Anwendung aus irgendeinem Grund nicht installieren (deployen) und findet somit natürlich auch nicht die JSP-Datei.
 
Ja, die Verzeichnisstruktur sieht genau so aus und auch die web.xml ist im entsprechenden Verzeichnis vorhanden (wie gesagt, ich hab den ganzen Ordner ja nur aus Eclipse kopiert). Trotzdem funktionierts nicht. Welche Log-Datei genau wäre denn relevant, weil im logs-Ordner gibt es ja mehrere Log-Dateien?

lg
Peter
 
ok dank dir war mir nicht ganz sicher...
habs bis jetzt auch nur in server.xml den pfad angegeben...
 
JWelche Log-Datei genau wäre denn relevant, weil im logs-Ordner gibt es ja mehrere Log-Dateien?

lg
Peter

catalina.<datum_des_Serverstarts>.log

Solltest du hier nichts finden, geh mal nach dem Start des Tomcat über "localhost:8080" in den Tomcat-Manager.

Ggf. musst du hierzu noch einen Benutzer zum Öffnen des Managers anlegen:
Datei <tomcat-home>\conf\tomcat-users.xml öffnen und folgendes ergänzen:
Code:
  <role rolename="manager"/>
  <user username="manager" password="kennwort" roles="manager"/>

Der Manager zeigt dir an, welche Anwendungen im Tomcat aktiv sind und bietet dir jeweils einen Link an. Ist deine Anwendung nicht da, ist das Deployment schief gelaufen. Ansonsten stimmt irgendwas mit deinen Pfadangaben nicht.
 
Ich bin gerade draufgekommen, was der Fehler war! :idea:

Die "CATALINA_HOME"-Umgebungsvariable war falsch gesetzt, warum das so war weiß ich nicht. Ich hab sie sicher nicht gesetzt, weil ich bis vor kurzem davon nicht einmal etwas wusste. Jedenfalls hab ich sie jetzt aufs richtige Verzeichnis geändert und siehe da, es hat auf Anhieb funktioniert! :toll:

Trotzdem danke nochmal an alle für die vielen Antworten!

lg
Peter
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben