无法使用writerInterceptor拦截jersey资源方法

时间:2016-01-19 14:36:27

标签: java spring rest jersey jax-rs

我试图使用编写器拦截器拦截泽西资源方法。但这对我不起作用。

自定义注释

@NameBinding
@Target({ElementType.TYPE, ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface TransactionMonitored {
  String name() default "";
}  

拦截器类

@TransactionMonitored
@Provider
public class TestInterceptor implements WriterInterceptor {

   @Override
   public void aroundWriteTo(WriterInterceptorContext context) throws IOException, WebApplicationException {
      context.proceed();
   }
}

资源方法

@ApiOperation(value = "Get Air Avail Message Response", notes = "Returns Air Avail Response for Input XML Request", response = AirAvailResponseType.class)
@Produces({MediaType.APPLICATION_XML,CommonConstants.Fastinfoset})
@Consumes({MediaType.APPLICATION_XML,CommonConstants.Fastinfoset})
@POST
@TransactionMonitored
public Response execute(AirAvailRequestType airAvailRequestType, @Context HttpContext HttpContext) {
    Exchange<AirAvailRequestType, AirAvailResponseType> padExchange = new Exchange<>(airAvailRequestType);
    ExecutionContext context = null;
    try {

首先我使用Spring AOP方法拦截器拦截上述资源方法,并确定我无法拦截在泽西注册的资源方法。所以我试过这个球衣拦截器。任何人都可以检查,让我知道我是否遗漏了任何东西。

0 个答案:

没有答案