2011-03-08 4 views
0

시나리오 : 일반적인 콩이 컨텍스트 XML 파일에 정의되어DispatcherServlet에서 관리하지 않는 서블릿에서 Spring 애플리케이션 컨텍스트를 활성화하는 방법은 무엇입니까?

  1. .

  2. DispatcherServlet이 /foo/*에 매핑됩니다.

  3. MyServlet은 /bar/*으로 매핑됩니다.

  4. Foo 클래스와 Bar 클래스간에 공통 빈을 공유하려고합니다.

질문은 :

  1. 나에게 MyServlet에서 DispatcherServlet에 대한 ApplicationContext를받을 수 있나요? (web.xml에서는 DispatcherServlet 뒤에 MyServlet을 정의했습니다.)

  2. Q1이 아니라면 MyServlet에서 ApplicationContext를 어떻게 얻을 수 있습니까? 아니면 MyServlet을 특정 ApplicationContext와 유선으로 연결시킬 수 있습니까?

답변

4

당신은 또 다른 하나의 서블릿의 컨텍스트를 공유 할 수 없습니다,하지만 당신은 DispatcherServlet에의 부모 컨텍스트 역할을하는 두 번째 컨텍스트를 선언 할 수 있습니다. 두 서블릿에서 액세스해야하는 모든 bean은이 새로운 컨텍스트로 이동해야합니다.

설정 방법은 section 3.13.4 of the Spring docs을 참조하십시오.

+0

좋습니다. 하지만 DispatcherServlet의 부모 컨텍스트를 선언하는 방법을 얻지 못했습니다. 더 자세히 설명해 주시겠습니까? –

관련 문제