2009-10-21 16 views
5

Tengo un montón de archivos de configuración de muelles, todos los cuales viven bajo el directorio META-INF en varios subpaquetes. He estado usando importación como la siguiente ...Rutas relativas en el recurso springpath class

<import resource="../database/schema.xml"/> 

Una ruta relativa desde el archivo de origen. Esto funciona bien cuando estoy trabajando con una compilación local fuera de un archivo jar. Pero cuando empaqueto todo en un contenedor, recibo el error de que no puede resolver el recurso de URL. Si cambio lo anterior a una ruta absoluta (con classpath :), entonces funciona bien.

¿Hay alguna forma de usar rutas relativas con ".." cuando las configuraciones están empaquetadas en un contenedor o estoy restringido a rutas relativas descendentes y rutas absolutas solamente?

Gracias.

Respuesta

5
<import resource="classpath:database/schema.xml"/> 
+0

Necesitaría ser pero esto no funciona. –

+0

Hm ... ¿Tienes que tenerlo en META-INF? – Trick

+1

No necesariamente, pero lo necesito empaquetado en el contenedor para que los usuarios del contenedor tomen la configuración con él. –

13

Poco además: Si desea acceder a los recursos de un frasco, se debe leer:

<import resource="classpath*:database/schema.xml"/> 
+1

¡El asterisco! Eso es lo que me estaba perdiendo. –

4

Lo que funciona bien en mi proyecto es las siguientes líneas en la aplicación-servlet.xml :

<!-- Database Configuration --> 
<import resource="classpath*:/database/DataSource.xml"/> 
<import resource="classpath*:/database/Hibernate.xml"/> 

Directories

Si se puede ayudar ...

Cuestiones relacionadas