2013-02-27 3 views
13

ich eine Web-Anwendung auf tomcat ist 7. Die Kontextdatei namens myAppName.xml in $CATALINA_HOME/conf/Catalina/localhost folder.

Das Problem liegt im Einsatz haben Ich bin konfrontiert, dass bei jedem Überschreiben oder Deeploy, meine Konfigurationsdatei aus dem Ordner $CATALINA_HOME/conf/Catalina/localhost gelöscht wird und ich es von einem Backup-Speicherort kopieren/einfügen muss.

Wie kann ich dieses Verhalten verhindern? Ich möchte die Kontextdatei nicht jedes Mal kopieren/einfügen, wenn ich etwas in webapp ändere.Kater verhindern 7 aus meiner benutzerdefinierten Kontextdatei auf jeder einzelnen Überschreiben/undeploy meiner Webapp Löschen

Antwort

1

Im Quellbaum in web/META-INF einfügen, dann kopiert Tomcat es bei jeder Implementierung in conf/..... Tomcat 7 wird dies nicht standardmäßig tun, sondern nur dort verwenden, wo es ist.

+6

Aber was passiert, wenn ich meine Konfiguration außerhalb meiner Kriegsdatei behalten möchte? Ich möchte die gleiche WAR-Datei auf mehreren Servern mit unterschiedlicher Konfiguration bereitstellen können. – Destroyica

+0

Also genau das tun. Stellen Sie es getrennt von der WAR-Datei bereit. Bewahre es nicht an einem Ort auf, an dem To cat es überlisten würde, oder erwarte, dass Tomcat es über WAR-Nachladungen hinweg aufbewahrt. – EJP

+1

Entschuldigung, aber ich verstehe nicht, wo Sie die Kontextdatei vorschlagen. Was meinst du mit "web/META-INF im Quellbaum"? Dieses Problem tritt in der Regel auf, wenn Sie die WAR-Datei aktualisieren (die Idee hier ist, die Konfiguration AUSSERHALB der WAR-Datei zu haben/beizubehalten). In diesem Fall müssen Sie eine Kopie Ihrer Kontextdatei an anderer Stelle aufbewahren, da Tomcat sie durch ein Update in zwei Schritten entfernt: deploy, deploy. – Destroyica