我有一个实现 ContainerRequestFilter 的类,我想向其中注入一些 spring 依赖项,所以我需要让 Spring 知道 Jersey 过滤器。过滤器本身在我的 web.xml 中配置了 Jersey servlet
<servlet>
<servlet-name>Jersey Spring Web Application</servlet-name>
<servlet-class>com.sun.jersey.spi.spring.container.servlet.SpringServlet</servlet-class>
<init-param>
<param-name>com.sun.jersey.spi.container.ContainerRequestFilters</param-name>
<param-value>com.MyFilter</param-value>
</init-param>
</servlet>
然后过滤器类尝试注入 Manager bean。为了让 spring 了解 Filter bean,我在 applicationContext.xml 中定义了 bean 并包含在内。
@Component
public class MyFilter implements ContainerRequestFilter {
@Autowired
private Manager manager;
我试图通过强制 Spring 使用代理生成的类来使过滤器 bean 可见,但这不起作用
<mvc:annotation-driven />
<aop:aspect-autoproxy />
<bean id="filter" class="com.MyFilter">
<property name="manager" ref="Manager" />
</bean>
关于如何编辑现有代码以允许过滤器看到 spring bean 的任何建议?