2010-03-22 68 views
8

我使用在相同的应用程序org.springframework.web.servlet.DispatcherServletorg.springframework.ws.transport.http.MessageDispatcherServlet但每个加载自己的应用程序上下文,我需要加载所有Bean在一个单一的应用程序上下文。使用单一的Spring应用程序上下文的web应用程序

应用程序由典型的层网络>应用程序>道等

我曾尝试是在contextConfigLocation设置它使用一个单一的spring-root-context.xml

但并没有帮助,这一直是我的问题很长一段时间我将不胜感激任何帮助。

任何网上的引用将是一个很大的帮助。

回答

12

你所需要的是什么ContextLoaderListener。这是一个ServletContextListener,它创建一个在该webapp中的所有servlet之间共享的根WebApplicationContext

DispatcherServletMessageDispatcherServlet仍然会创建自己的背景,但每次都会有根上下文作为他们的父母,所以他们俩能够使用在根上下文中定义的bean,像的DAO等一些豆类将有保留在servlet自己的上下文中,比如控制器,视图解析器,SOAP端点等等,但共享通用bean可以放在根中。

有关如何配置这样的一个例子,看到Spring docs

+0

嗨skaffman,感谢你的好帮手其工作就像一个梦,现在,谢谢:) – Ramo 2010-03-23 11:03:53

+0

@Ramo:很高兴提供帮助。这是你点击我的答案旁边的刻度符号的地方:) – skaffman 2010-03-23 11:32:46

+0

链接腐烂再次发生。那么它将如何配置? – eis 2013-06-04 13:30:21

相关问题