RESTEasy 3.xx符合JAX-RS 2.0规范。
您尝试执行的操作可以(可能更好)完成:
@Providerpublic class SecurityInterceptor implements javax.ws.rs.container.ContainerRequestFilter { @Override public void filter(ContainerRequestContext requestContext){ if (not_authenticated){ requestContext.abortWith(response)}; }}因为
ReaderInterceptor仅当底层
MessageBodyReader.readFrom由标准JAX-
RS管道调用时才调用,而不是从应用程序代码中调用。
但是,未调用拦截器的原因可能是
@ServerInterceptor注释,它是RESTEasy扩展。
规范在§6.5.2中指出,拦截器是全局注册的,除非
@Provider带有
@NameBinding注释,否则我不知道是否
RESTEasy可以处理
@ServerInterceptor未明确注册的,如RestEASY拦截器未调用中所示。



