# Servlets | work - Klassen nicht im WAR File



## mr_bemar (24. Aug 2007)

Hallo,

ich entwickle mit Eclipse und nutze den Tomcat 6 als app-server.
Ich bin in dem Servlet Thema recht neu was die Anordnung der Files betrifft und dem "was brauch ich alles um servlets zu schreiben" Wissen angeht.

Also mein HalloWelt Servlet geht, weil ich im Servlet direkt mit dem printwriter arbeite. Somit funzt zumindest mal der Tomcat und mein War File scheint auch zu passen. Damit exportier ich das ganze nämlich zum Tomcat.

Jetzt möchte ich einen Controller anlegen, der meine Befehle verwaltet und habe erst mal einen einfachen CommandHandler geschrieben der z.B. mein HalloWelt verwaltet.

Dieser CommandHandler liegt im Verzeichnis /work/bma/controller/commandhandler.java

Leider ist das komplette work-verzeichnis nicht im WAR File enthalten. Also bekomme ich natürlich einen Fehler 500 das er "bma/controller/commandhandler.handleCommand" nicht finden kann.

Wie sag ich jetzt dem Eclipse, das mein Workverzeichnis evtl. auch nicht schlecht wäre, wenn's im WAR File ist.

Danke und Gruß

Ben


----------



## ms (24. Aug 2007)

Ich verstehe deine Frage noch nicht ganz.
Du willst in einer Webapplikation eine Klasse verwenden, die nicht im war liegt?

ms


----------



## mr_bemar (24. Aug 2007)

Tja, so ist es momentan. Aber die Klassen sollen ja ins WAR File rein. Aber Eclipse packt das work-Verzeichnis nicht mit ins WAR File. Oder gehören Klassen woanders hin?

Hier ein screenshot:


----------



## ms (24. Aug 2007)

Wenn ich das richtig erkenne, hast du kein spezielles Plugin für die Entwicklung von Webapplikationen. 
Entweder du verwendest ein entsprechendes Plugin (zb. WTP) oder du kannst fürs erste in den Projekteinstellungen den Output-Folder auf "/WEB-INF/classes" legen.
Ich rate dir trotzdem zu einem Plugin.

ms


----------



## mr_bemar (27. Aug 2007)

Ok. hab mir das WTP installiert und schon ist das ganze etwas einfacher.
Mein Hallo Welt mit dem CommandHandler läuft schon.

Danke für den Tipp


----------



## fehlerfinder (4. Sep 2007)

mr_bemar hat gesagt.:
			
		

> Aber die Klassen sollen ja ins WAR File rein. Aber Eclipse packt das work-Verzeichnis nicht mit ins WAR File. Oder gehören Klassen woanders hin?



Genauso ist es. Klassen liegen unter WEB-INF/classes. Sieh dir auch mal

http://tomcat.apache.org/tomcat-6.0-doc/appdev/deployment.html

an. Im Abschnitt "Standard Directory Layout" ist das recht übersichtlich erläutert. Das "work"-Verzeichnis enthält in weiteren Unterverzeichnissen die aus den jsp-Dateien erzeugten java-Dateien nebst den wiederum daraus erzeugten class-Dateien. Da dies (also das work-Dir) ohnehin beim Aufrufen einer (jsp-)Seiten vom Compiler erzeugt wird, gehört es auch gar nicht mit in die war-Datei hinein.


----------

