# Deployment in Unterverzeichnis



## Marsman (10. Dez 2007)

Hallo Ihr!

Bisher habe ich meine Anwendungen immer in das Deploymentverzeichnis des Tomcat (oder JBoss) gestellt. Darauf konnte ich sie z.B. unter http://domain.de/anwendung/index.jsp aufrufen. Damit ich meiner Verzeichnisstruktur auf meiner Website folgen kann, hätte ich nun gerne auch eine Möglichkeit, als URL ein Unterverzeichnis anzugeben. Also zum Beispiel http://domain.de/verzeichnis/anwendung/index.jsp. Geht das irgendwie?? Ich habe von mit den Attributen docbase und path der Context.xml experimentiert, komme aber irgendwie nicht zum gewünschten Ergebnis.


Titus


----------



## maki (10. Dez 2007)

Schau doch mal in die Servlet Spec 

"anwendung" bzw. "verzeichnis" ist der context, den muss es nicht wirklich im Dateisystem geben, sondern nur ein mapping drauf, glaube kaum dass du so zum gewünschten Ergebnis kommst.

So müsste das eher klappen:
http://domain.de/anwendung/verzeichnis/index.jsp.


----------



## ms (10. Dez 2007)

Wenn du einen Apache davorstellst sollte das schon möglich sein.

ms


----------



## Marsman (10. Dez 2007)

...es ist ein Apache davor. Aber wie geht das nur?!?

Titus


----------



## ms (10. Dez 2007)

Ohne es jetzt getestet zu haben müßte es entweder mit mod_proxy(ajp), rewrite bzw. dem jk-Connector gehen.
Oder was willst du jetzt genau wissen?

ms


----------



## Marsman (11. Dez 2007)

ms hat gesagt.:
			
		

> Oder was willst du jetzt genau wissen?



...ich versuche, das nochmal kurz zusammenzufassen: Wie wahrscheinlich jeder, habe ich die Seiten meiner Website nach Rubriken gegliedert (z.B. Musik, Bilder). Innerhalb der Rubriken gibt es weitere Unterverzeichnisse (z.B. Urlaubsfotos, Landschaften). Die URLs zu den Seiten ist natürlich ebenfalls entsprechend gegliedert. Nun habe ich für eine dieser Untergruppen eine JSF-Anwendung programmiert. Für Web-Apps habe ich aber nur ein Deploymentverzeichnis auf Domain-Ebene. Wie erreiche ich es, dass sich die Anwendung ebenfalls in dem zugehörigen Unterverzeichnis befindet? Also z.B. "Bilder/Landschaften". (Apache, JK-Mod und Tomcat sind vorhanden, JSPs und JSFs werden an den Tomcat übergeben).


Titus


----------



## maki (11. Dez 2007)

Nicht sicher b ich vestehe was du meinst, versuche trotzdem eine Antwort zu schreiben:


> Wie wahrscheinlich jeder, habe ich die Seiten meiner Website nach Rubriken gegliedert (z.B. Musik, Bilder). Innerhalb der Rubriken gibt es weitere Unterverzeichnisse (z.B. Urlaubsfotos, Landschaften).


Rubriken Ja, Verzeichnisse eher Nein, speziell mit Servlets.



> Nun habe ich für eine dieser Untergruppen eine JSF-Anwendung programmiert.


Was meinst du damit?
"Eine JSF Anwendung für eine Untergruppe"???



> Für Web-Apps habe ich aber nur ein Deploymentverzeichnis auf Domain-Ebene.


Wirklich? Sollte nicht jeder Context seine eigene Document Root haben?



> Wie erreiche ich es, dass sich die Anwendung ebenfalls in dem zugehörigen Unterverzeichnis befindet? Also z.B. "Bilder/Landschaften".


Ich verstehe nicht wie eine Webanwednung in einem "Unterverzeichniss" liegen kann.
Mit dem Tomcat kannst du bestimmen, wo die Dateien liegen, es muss nicht notwendigerweise im webapps Ordner liegen.
Aber eine URL hat ja nix mit einer Ordnerstruktur zu tun im Tomcat 

Greifst du etwa direkt auf die JSPs zu?


----------



## Marsman (11. Dez 2007)

Ich habe inzwischen einige Stunden gegoogelt und herausgefunden, dass man mit einem #-Zeichen im Namen der context-Datei eine Trennung für Unterverzeichnisse erhält. Man erstellt also z.B. eine Datei foo#bar.xml im Konfigurationsverzeichnis conf/Catalina/hostname. Dann wird eine Anwendung in webapps/foo/bar über http://hostname/foo/bar gefunden und aufgerufen.

Aber wie erreiche ich den selben Effekt, wenn ich mit einem WAR-Archiv deploye?? Oder ist es dann nicht möglich, Unterverzeichnisse zu verwenden??

Titus


----------

