Solíamos tener una manera de cargar las propiedades de un archivo en la ruta de clase:Cómo utilizar la propiedad-marcador de posición para el archivo de sistema de archivos
<context:property-placeholder location="classpath:myConfigFile.properties" />
y funcionó muy bien. Pero ahora queremos cargar propiedades de un archivo específico en el sistema que NO está en el classpath. Queríamos poder cargar dinámicamente el archivo, por lo que estamos usando una variable de entorno Java para rellenarlo. Voy a dar un ejemplo sencillo a continuación:
En Java:
System.setProperty("my.prop.file", "/path/to/myConfigFile.properties");
En primavera XML:
<context:property-placeholder location="${my.prop.file}" />
También he intentado de esta manera, gracias a una idea de Luciano:
<context:property-placeholder properties-ref="prop" />
<util:properties id="prop" location="reso"/>
<bean id="reso" class="org.springframework.core.io.FileSystemResource">
<constructor-arg index="0" value="${my.prop.file}" />
</bean>
Todo lo que he probado ha fallado. No importa a qué establezca my.prop.file. Grandes éxitos incluyen:
<context:property-placeholder location="/path/to/myConfigFile.properties" />
(ClassNotFoundException: .path.to.myConfigFile.properties)
<context:property-placeholder location="file:/path/to/myConfigFile.properties" />
(ClassNotFoundException: file:.path.to.myConfigFile.properties)
<context:property-placeholder location="file:///path/to/myConfigFile.properties" />
(ClassNotFoundException: file:...path.to.myConfigFile.properties)
¿Cómo se utiliza la propiedad marcadores de posición con una ubicación que está en el sistema de archivos y no en la ruta de clase? Estamos usando Spring 3.0.5.
Resulta que hubo un problema con la secuencia de comandos que ejecuta el programa Java que carga el archivo de primavera. Gracias por ayudar. Voy a solicitar que se elimine esta pregunta, ya que el código original funciona después de todo. Gracias por su ayuda.
Por cierto Muy en desacuerdo w/esta siendo cerrada –
No estoy de acuerdo con el cierre también. Vine aquí después de buscar en Google y se describe la pregunta exacta que tengo ... –
Yo también - No entiendo por qué esto se cerró con una categoría "demasiado localizada" Parece bastante general para mí? – monojohnny