Иерархия контекста Spring с контекстом веб-приложения

Я имею дело с веб-приложением Spring MVC, которое загружается с помощью DispatcherServlet . Он создает XmlWebApplicationContext , который управляет всем приложением:

<servlet>
    <servlet-name>springmvc</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet
    </servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:springmvc-servlet.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

Теперь есть несколько модулей, которые должны быть загружены во время выполнения с помощью ContextSingletonBeanFactoryLocator . Поэтому каждый модуль имеет свой собственный ClasspathXmlApplicationContext . Чтобы модуль мог ссылаться на компоненты из XmlWebApplicationContext , он должен быть присоединен к XmlWebApplicationContext , чтобы сформировать иерархию контекста, в которой XmlWebApplicationContext должен играть роль parent и ClasspathXmlApplicationContext модуля роль дочернего контекста. К сожалению, я не могу соединить их с помощью

<beans>
    <bean id="moduleContext"
        class="org.springframework.context.support.ClassPathXmlApplicationContext">
        <constructor-arg>
            ...
        </constructor-arg>
        <constructor-arg ref="parentContext" />
    </bean>
</beans>

, потому что я пока не нашел способа присвоить WebApplicationContext имя parentContext . Я что-то упустил или есть лучший / более простой способ добиться того же другим способом?

10
задан Grzegorz Oledzki 18 May 2011 в 12:51
поделиться