Tomcat context.xml Dateien, gibt es eine hiearchy?
Ich versuche, mit symbolischen links in eine der Anwendungen, die ich laufen haben, auf Tomcat5. Dank einiger Hilfe aus ein weiterer StackOverflow-Frage ich war in der Lage, es zu tun
durch die Schaffung einer context.xml Datei in
/...myapplication/META-INF/context.xml
Ich bin jetzt zu versuchen, diese auf einem Produktions-server. Es gibt jedoch andere Anwendungen, die auf. Und es ist ein weiterer Kontext-Datei
/...tomcat/conf/context.xml
Scheint es mir, diese Einstellung Konfigurationen, server-weit für alle Anwendungen. Wenn ich allowLinks in der conf/context.xml Datei, meine symbolische links funktionieren. Wenn ich nicht in allowLinks conf/context.xml meine Anwendung symbolische links funktionieren nicht, auch wenn ich Ihnen erlaubte, in der META-INF/context.xml
Meine Frage ist, funktioniert das conf/context.xml Steuern Sie alle Anwendungen? Wenn ich will, symbolische links, die auf nur eine Anwendung habe, brauche ich um die zu entfernen conf/context.xml und schaffen neuen Kontext-Dateien für jede Anwendung? Oder gibt es eine Möglichkeit, ich kann mir erlauben, den symbolischen links in myapplication nur?
InformationsquelleAutor jeph perro | 2008-11-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sehen meine Antwort " Die Tomcat 5 Kontext-Datei Vorrang " Frage stellen.
Bezüglich Ihrer spezifischen
allowLinks
Frage, ist der Wert inconf/context.xml
Vorrang standardmäßig. Wenn Sie sagen, dass nichts in Ihremconf/context.xml
, der Standardwert istallowLinks="false"
in Ihremconf/context.xml
.Wenn Sie es ändern wollen, nur für Ihre
myapplication
, versuchen zu sagen, dass<Context allowLinks="true" ...>
in IhremMETA-INF/context.xml
haben keine Wirkung, da normalerweise dieconf/context.xml
Einstellung Vorrang.Aber, wenn Sie sagen
<Context allowLinks="true" override="true" ...>
in IhremMETA-INF/context.xml
, dann werden alle Ihre<Context>
Einstellungen inMETA-INF/context.xml
werden höchsten Priorität und überschreiben alles inconf/context.xml
.Schließlich, anstelle einer
myapplication/WEB-INF/context.xml
Datei, empfehle ich einconf/Catalina/localhost/myapplication.xml
- Datei. Diese Technik bedeutet, Sie können halten Sie die Inhalte Ihrer WEB-INF sauber, was die Eingeweide Ihrer webapp -- ich mag nicht Gefahr abwerfen, ungefähr in die Eingeweide meiner webapp. 🙂InformationsquelleAutor netjeff
Nur um einen Punkt hinzuzufügen.
In der Regel th meta-inf/context.xml kopiert conf/Catalina/localhost/myapplication.xml
Wenn redploying eine war-Datei der conf/Catalina/localhost/myapplication.xml gelöscht und neu kopiert, wie oben beschrieben.
Kann dies eine echte Schmerzen. Ich mag die Idee von anwendungsspezifischen Kontext, aber ich sehe nicht, wie diese im meta-inf-Verzeichnis hilft.
Für Prod, UAT, etc dies wird eine echte Schmerzen.
Also für alles server statisch, sondern bestimmte Anwendung ist es besser, um es in der conf/context.xml. Das hat aber den negativen, dass es hält Kontext für verschiedene Anwendungen, berühren Sie versehentlich berühren Sie alle.
InformationsquelleAutor