我正在使用像这样的简单JAX-RS过滤器:
@Provider
public class TestFilter implements ContainerRequestFilter {
@Override
public void filter(ContainerRequestContext containerRequestContext) throws IOException {
System.out.println(containerRequestContext.getMethod());
}
}
现在,我需要找到一种在运行时获取所有这些过滤器列表的方法。我可以通过JMX或MBeanServerFactory
获得所有“ tomcat过滤器”的列表,例如jax-rs过滤器本身。但是,这些方法不适用于我的自定义过滤器。
我还尝试过修补cxf及其ServerProviderFactory,它确实具有preMatchContainerRequestFilters
列表。但是要实现这一点,我需要一个上述工厂的实例,对于这个实例,我似乎需要一条特定的消息。 (当工厂取决于消息时,我什至会得到所有过滤器?)