[英]Using single spring application context for web app
我在同一個應用程序中使用org.springframework.web.servlet.DispatcherServlet
和org.springframework.ws.transport.http.MessageDispatcherServlet
,但每個都在加載自己的應用程序上下文,我需要在單個應用程序上下文中加載所有bean。
該應用程序由典型的web> app> dao等層組成
我試過的是通過在contextConfigLocation
設置它來使用一個spring-root-context.xml
。
但是沒有幫助,這對我來說一直是一個問題很長一段時間我會感激任何幫助。
任何在線參考都會有很大的幫助。
你需要的是ContextLoaderListener
。 這是一個ServletContextListener
,它創建一個根WebApplicationContext
,該webApplicationContext在該webapp中的所有servlet之間共享。
您的DispatcherServlet
和MessageDispatcherServlet
仍將創建自己的上下文,但每個都將根上下文作為其父上下文,因此它們都能夠使用在該根上下文中定義的bean,如DAO等。某些bean必須保留在servlet擁有上下文,例如控制器,視圖解析器,SOAP端點等,但共享公共bean可以放在根目錄中。
有關如何配置它的示例,請參閱Spring文檔 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.