Tengo un proyecto organizado así:resorte dentro de la guerra no puede encontrar el recurso ruta de clase en un archivo jar interior
core
-- /src/main/resources/company/config/spring-config.xml
webapp
-- /WEB-INF/applicationContext.xml
La aplicación web depende de core.jar
, que se incluye correctamente en WEB-INF/lib
cuando despliego.
En web.xml
tengo:
<param-value>
/WEB-INF/applicationContext.xml
</param-value>
Y en applicationContext.xml
tengo:
<import resource="classpath:/company/config/spring-config.xml" />
Pero cuando corro, me sale este error:
2012-10-04 20:03:39,156 [localhost-startStop-1] springframework.web.context.ContextLoader ERROR: Context initialization failed
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [classpath:/company/config/spring-config.xml]
Offending resource: ServletContext resource [/WEB-INF/applicationContext.xml]; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [company/config/spring-config.xml]; nested exception is java.io.FileNotFoundException: class path resource [company/config/spring-config.xml] cannot be opened because it does not exist
at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)
....
Caused by: java.io.FileNotFoundException: class path resource [company/config/spring-config.xml] cannot be opened because it does not exist
at org.springframework.core.io.ClassPathResource.getInputStream(ClassPathResource.java:142)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336)
... 36 more
Cuando spring-config.xml
es en webapp, todo funciona bien.
Me di cuenta de que el /
líder se ha eliminado de algunos de los errores en el seguimiento de la pila, y me pregunto si esto tiene algo que ver con eso.
Además, estoy (desafortunadamente) usando Spring 2.5, si eso importa.
eliminar/from /company/config/spring-config.xml y luego marcar – Satya
@Satya: gracias, lo intenté, obtengo el mismo resultado. – JBCP
@JBCP: puede que no funcione cuando elimine la barra diagonal inicial, porque tiene algún problema adicional, pero definitivamente no funcionará con la barra inicial. También es posible que desee leer este artículo, que puede ser útil: http://blog.carbonfive.com/2007/05/17/using-classpath-vs-classpath-when-loading-spring-resources/ – GreyBeardedGeek