我有一个带有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引用为null且所有@Context引用均已成功解析。
为什么有两个filter实例,一个实例的@Inject引用为空?