So lesen Sie eine Eigenschaftendatei außerhalb meines Webapp-Kontexts in Tomcat [duplizieren]

8

Ich habe diese Anforderung, die meine Webanwendung aus einer Eigenschaftendatei außerhalb des Tomcat-Webapps-Verzeichnisses lesen muss, z. B. aus $ CATALINA_HOME / properties / myapp.properties. Ich habe mehrere Dinge ausprobiert, aber bis jetzt kein Glück

    
user2152898 10.03.2013, 03:27
quelle

4 Antworten

15

Es gibt mehrere Ansätze.

  1. Verwenden Sie eine Umgebungsvariable
  2. Verwenden Sie eine Systemeigenschaft
  3. Legen Sie es als Anwendungskontext-Param in Web.xml fest

Hier ist ein Beispiel, das Option 1 and Option 2

anzeigt %Vor%     
Sudhakar 10.03.2013, 04:12
quelle
1

In unserem Projekt, dass wir den Pfad der Datei als vm-Argumente konfigurieren, die in den Tomcat-Eigenschaften und im Code gespeichert werden, verwenden Sie System.getProperty(the parameter you config) , um den Pfad abzurufen und die Eigenschaftendatei zu lesen, und erhalten dann die Ergebnisse.

    
OQJF 10.03.2013 03:45
quelle
1

Ich bevorzuge die Option, über Tomcat Kontextdeskriptoren zu konfigurieren.

Diese XML-Dokumente werden in den Ordner tomcat/conf/Catalina/<host>/*.xml

gestellt

Dies bezieht sich auf: Tomcat-Webapp-Konfiguration aus der .war-Datei ausgliedern

    
Hartmut 10.06.2014 17:33
quelle
0

Wir haben den Pfad des webapp-config Verzeichnisses wie folgt angegeben:

/var/lib/tomcat7/webapps/webapp/WEB-INF/classes/system-properties-location.properties

wo webapp = Name Ihrer Webapp-Datei

Hier finden Sie den Inhalt der Datei system-properties-location.properties:

Speicherort = / var / lib / tomcat7 / webapp-configs / webapp

Es zeigt auf einen externen Speicherort, von dem aus umgebungsspezifische Eigenschaften abgerufen werden können. Auf diese Weise können wir in dev, staging und prod den gleichen Krieg einsetzen, ohne den Kriegsinhalt zu verändern.

    
Himanshu Chauhan 15.04.2016 11:27
quelle