Questions & Answers

akq_dschulze
I'm new here

Tomcat deploy Konfiguration

Hallo Zusammen,

wir haben folgenes Problem:

รœber unseren externen Webserver, ein tomcat, lassen wir unsere Website anzeigen. Die Contentdateien liegen im webappsverzeichis in einem separaten Ordner: /webapps/website/"Content"

Wenn ich jetzt die website.war-Datei auf dem tomcat deployen lasse, dann wird der Content im Ordner website gelรถscht und man findet nur einen neuen Ordner WEB-INF wo die Suche etc. drin ist.

Wie kann ich dieses Problem umgehen bzw. wie ist eure Webserver-Struktur?

Vielen Dank und GrรผรŸe

Daniel

0 Kudos
7 Replies
thmarx
I'm new here

Hallo Daniel,

das ist "leider" Standard, wenn du ein WAR auf dem Tomcat deployst.

Du hast jetzt zwei Mรถglichkeiten:

1. Du startest nach dem deployen des WAR ein Voll-Generierung

2. Du spielst das WAR manuell ein. Also Tomcat stoppen, alles auรŸer dem content lรถschen, das website.war entpacken, den Inhalt in website kopieren, den Tomcat wieder starten

GruรŸ

Thorsten

0 Kudos
witt
I'm new here

Hallo Daniel,

eine weitere Alternative wรคre es, wenn du den Content nicht innerhalb des webapp-Ordner deployst, sondern komplett auรŸerhalb, also z.B. auf /var/myDomain/content. Innerhalb des webapps Ordners benรถtigst du nun einen symlink auf /webapps/website/"Content". Hier kรถnntest du z.B. ein Servlet nehmen welches Dir den Symlink beim Startup der Webapp automatisch erzeugt.

Viele GrรผรŸe,

Daniel

0 Kudos

Hallo Thorsten,

vielen Dank fรผr die Antwort.

Im Moment nutzen wir den ersten Weg, und starten nach jedem deployen des WAR-Files eine Voll-Generierung.

Den zweiten Weg hatte ich auch ausprobiert, allerdings hat dann die Suche auf der Website nicht funktioniert. Vielleicht hatte ich da aber auch einen Fehler gemacht :smileyconfused:

Viele GrรผรŸe

Daniel 

0 Kudos

Hallo Daniel,

vielen Dank fรผr die Antwort, die Lรถsung klingt elegant.

Gibts es irgendeine Anleitung wie ich das WAR-File/Servlet so konfigurieren kann, dass ein Symlink automatisch angelegt wird?

Viele GrรผรŸe

Daniel

0 Kudos

Hallo Daniel,

einen Prototypen eines derartigen Servlets haben wir schon einmal umgesetzt, vielleicht finde ich es noch irgendwo. Allerdings ist es sicher noch eleganter, wenn man aliases im Context setzt oder Ressourcen รผber einen VirtualDirContext und das Attribut extraResourcePaths bekanntgibt.

Hier die Beschreibung dazu:

http://tomcat.apache.org/tomcat-7.0-doc/config/context.html
http://tomcat.apache.org/tomcat-7.0-doc/config/resources.html
Das wรคre dann eine analoge Konfiguration zum extendedDocumentRoot im WebSphere Application Server, die ich hier beschrieben habe: Auslagerung von statischen und JSP-Dateien im WebSphere Application Server

Das wรคre auf jeden Fall die schรถnere Lรถsung.

Viele GrรผรŸe,

Raphael.

1+1=3 for large values of 1.
0 Kudos

Hallo Daniel,

benรถtigst du noch weitere Hilfe oder wurde deine Frage mit den gegebenen Antworten gelรถst? In diesem Fall wรคre es super, wenn du die "richtige Antwort" entsprechend markierst.

Viele GrรผรŸe

Michaela

0 Kudos
akq_dschulze
I'm new here

Hallo Zusammen,

wir haben inzwischen mal die verschiedenen Wege ausprobiert. Dabei haben wir allerdings ein Problem. Wenn neben dem WEB-INF Verzeichnis nur ein Symbolischer Link liegt, dann wird zwar die Website angezeigt aber die Suche und das Kontkat-Formular auf der Website funktioniert dann nicht. D.h. die Website kann nicht auf den WEB-INF Ordner zugreifen bzw. Werte รผbergeben.

Wenn ich allerdings den Content, ohne Link neben den WEB-INF lege, dann funktioniert die Suche etc.

Wie kann ich das Problem lรถsen bzw. wonach muss ich suchen.

Viele GrรผรŸe

Daniel

0 Kudos

Type a product name