2016-08-22 2 views
-2

Ich habe einige Parameter in web.xml Datei externalisiert werden. Bewerbung ist im Frühjahr 4.0. Gibt es einen Frühling Weg, dies zu tun?Externalize web.xml params in einer Spring-Anwendung

Genauer gesagt, wenn ich PropertyPlaceholderConfigurer in der Kontextdatei definiere, gibt es eine Möglichkeit, diese zum Abrufen von Eigenschaften in web.xml zu verwenden? Diese

ist, was ich versucht:

In applicationContext.xml:

<bean 
     class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
     <property 
      name="location" 
      value="classpath:/test.properties" /> 
     <property 
      name="ignoreUnresolvablePlaceholders" 
      value="true" /> 
    </bean> 

Dann in web.xml:

<context-param> 
     <param-name>contextConfigLocation</param-name> 
     <param-value> 
      /WEB-INF/applicationContext.xml 
     </param-value> 
    </context-param> 

Aber die folgenden Code gibt param Wert als $ {app .url}

<init-param> 
      <param-name>appUrl</param-name> 
      <param-value>${app.url}</param-value> 
     </init-param> 
+0

Jungs, verstehe nicht die negativen Stimmen !!!! – Ani

Antwort

0

Dies ist nicht möglich, da web.xml vor der Kontextinitialisierung geladen wird. Die einzige Lösung hierfür ist das Verschieben dieser Eigenschaften in anwendungsserverspezifische Eigenschaftendateien.

Ich benutze Tomcat und ich habe diese Eigenschaft in catalina.properties verschoben. Jetzt geht es.