我如何使用Spring启用Tomcat阀门

时间:2011-01-21 20:46:56

标签: java spring tomcat tomcat-valve

我写了一个Tomcat阀门并在server.xml中配置它。 到现在为止还挺好。但是,我希望其中一个Valve的数据成员是一个Spring托管bean。 那么,我怎样才能让阀门进行Spring管理,以便我可以将Spring的IoC注入阀门中?

1 个答案:

答案 0 :(得分:1)

阀门与应用程序无关,而弹簧上下文则与之相关。所以你不能在Valve中拥有一个spring-managed bean。

当然,您可以在Valve构造函数中实例化spring上下文,并在那里使用context.autowireBean(this),但这将是一个单独的spring上下文,而不是来自任何可用上下文的上下文。

从技术上讲,你可以访问来自Valve的上下文,但是afaik来自请求,所以你可以获得每个servlet上下文的ApplicationContext,并从那里获得对bean的引用,但是这听起来很奇怪。