我有一个带有 ContainerRequestFilter 的简单 Apache Meecrowave 1.2.1 (OWB+CXF) 应用程序:
@Singleton
@Provider
public class AppInstanceAndSecurityFilter implements ContainerRequestFilter {
...
@Inject
private AppInstanceService appInstanceService;
...
@Context
private ResourceInfo resourceInfo;
...
}
AppInstanceAndSecurityFilter 类在 Application 子类的 getClasses() 方法中返回。
问题是过滤器被调用了两次,并且有两个过滤器实例——一个是所有成功解析的@Inject 和@Context 引用,一个是所有@Inject 引用为空并且所有@Context 引用都成功解析。
为什么有两个过滤器实例,一个带有空 @Inject 引用?