У меня есть веб-проект Spring, который использует Maven для компиляции / сборки. Нет проблем в построении проекта. Я пытаюсь запустить проект в Eclipse (3.3.2) на сервере Tomcat (v6).
В рамках проекта Spring у меня есть файл spring-servlet.xml в каталоге WEB-INF. Этот файл включает в себя другой XML-файл ресурса, имеющий конфигурацию источника данных.
<import resource="classpath:${datasourceInclude}.xml"/>
Теперь, когда проект компилируется с использованием Maven, он разрешает переменную $ {datasourceInclude} и устанавливает для нее подходящие значения, в результате чего получается spring-servlet.xml с правильными значениями.
<import resource="classpath:datasourceLocal.xml"/>
Но когда я пытался запустить проект в Eclipse (Tomcat), я получаю следующую ошибку:
org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [classpath:${datasourceInclude}.xml]
Offending resource: ServletContext resource [/WEB-INF/spring-servlet.xml]; nested exception is org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [${datasourceInclude}.xml]; nested exception is java.io.FileNotFoundException: class path resource [${datasourceInclude}.xml] cannot be opened because it does not exist
at org.springframework.beans.factory.parsing.FailFastProblemReporter.error(FailFastProblemReporter.java:68)
...
...
Обычно, когда я запускаю Tomcat, он пытается выбрать файл spring-servlet.xml из папки / src / main / webapp / WEB-INF, в которой есть переменная $ {datasourceInclude}.
Может кто-нибудь сказать мне, как решить эту проблему, чтобы мне не пришлось менять spring-servlet.xml и добавлять значение жесткого кода вместо переменной $ {datasourceInclude}.