2010-07-19 2 views
3

Я работаю в мультимодульном проекте maven2 с использованием Spring и GWT. Предположим, у меня есть два подпроекта: сервис и презентация. «Сервис» содержит фактические реализации услуг, и «презентация» отвечает за их упаковку для GWT.Весенние файлы XML за пределами WEB-INF

Я успешно загрузил файлы Spring Spring, которые находятся в каталоге WEB-INF (так же, как и web.xml), но у меня возникают проблемы с этими файлами XML, которые должны быть загружены из других модулей.

Моя web.xml выглядит следующим образом:

<listener> 
    <listener-class> 
     org.springframework.web.context.ContextLoaderListener 
    </listener-class> 
</listener> 

<context-param> 
    <param-name>contextConfigLocation</param-name> 
    <param-value> 
     classpath:/spring-presentation.xml, classpath:/spring-services.xml 
    </param-value> 
</context-param> 

Здесь spring-presentation.xml находится в проекте презентации и spring-services.xml в проекте службы. Файл spring-services.xml не загружен. Я что-то упускаю?

ответ

2

Я предполагаю, что проект презентации составлен как WAR, а проект служб скомпилирован как JAR. Также, что проект презентации зависит от проекта услуг.

В таком случае включите файл spring-services.xml в качестве ресурса в помпе проекта службы, чтобы он попал в его банку, и поскольку проект презентации имеет зависимость от проекта служб, баннер служб будет помещен в папку /WEB-INF/lib а затем Spring сможет загрузить его из класса.

+0

весна-services.xml уже в SRC/главная/ресурсы дир проекта услуги , поэтому я думаю, что нет необходимости явно объявлять его в pom проекта – mgv

1

Если значение начинается с classpath: это не будет выглядеть в WEB-INF/ папке она будет выглядеть в пути к классам, который WEB-INF/classes и прямое содержимое всех файлов .jar под WEB-INF/lib/.

Чтобы сделать его в WEB-INF/папки, необходимо указать значение, как это:

<param-value> 
    /WEB-INF/spring-presentation.xml 
    /WEB-INF/spring-services.xml 
</param-value> 

(вы можете поместить их в одну строку через запятую, но я это нравится)

0

использование

<import resource="classpath:spring-services.xml" />

в верхней части spring-presentation.xml вместо ссылки на нее из web.xml