2011-01-21 4 views
1

Tomcat 밸브를 작성하여 server.xml에 구성했습니다. 지금까지 너무 좋아. 그러나 밸브의 데이터 멤버 중 하나가 Spring 관리 Bean이되기를 원합니다. 그렇다면 어떻게 밸브를 Spring 관리로 만들어서 Spring의 IoC가 밸브에 의존성을 갖게 할 수 있습니까?Tomcat 밸브를 사용 가능하게하는 방법

답변

1

밸브는 응용 프로그램과 연관되지 않지만 스프링 컨텍스트는 있습니다. 그래서 당신은 밸브에 봄 관리 콩을 가질 수 없습니다.

물론 밸브 생성자에서 스프링 컨텍스트를 인스턴스화하고 context.autowireBean(this)을 사용할 수 있지만이 컨텍스트는 사용 가능한 컨텍스트 중 하나가 아니라 별도의 스프링 컨텍스트가됩니다.

기술적으로 Valve의 컨텍스트에 액세스 할 수 있지만 요청에 따라 컨텍스트에 액세스 할 수 있으므로 각 서블릿 컨텍스트에 대해 ApplicationContext을 얻을 수 있으므로 거기에서부터 Bean에 대한 참조를 얻습니다.하지만 이상하게 들립니다. .

+0

빠른 답변 감사드립니다. 현재 우리는 Tomcat에 ServletFilters로 배포 된 여러 응용 프로그램에 대한 공통 기능을 구현합니다. 우리는 이것을 밸브로 통합하고자합니다. 밸브 자체는 배포 된 응용 프로그램의 다른 콩과 직접 관련이 없습니다. 그러나 스프링 유선 라이브러리에 의존합니다. 그래서 나는이 모든 콩을 스프링 와이어로 만들어 밸브에 주입하려고했습니다. 당신의 제안이 효과가 있다고 생각합니다. 감사. – user585037

관련 문제