resteasy拦截器,拦截rest请求,修改response header内容

只拦截GET请求,并修改header中的内容反馈给客户端

[java]  view plain copy
  1. import java.io.IOException;  
  2. import java.lang.reflect.Method;  
  3.   
  4. import javax.ws.rs.GET;  
  5. import javax.ws.rs.WebApplicationException;  
  6. import javax.ws.rs.ext.Provider;  
  7.   
  8. import org.jboss.resteasy.annotations.interception.ServerInterceptor;  
  9. import org.jboss.resteasy.spi.interception.AcceptedByMethod;  
  10. import org.jboss.resteasy.spi.interception.MessageBodyWriterContext;  
  11. import org.jboss.resteasy.spi.interception.MessageBodyWriterInterceptor;  
  12.   
  13. @Provider  
  14. @ServerInterceptor  
  15. public class MyHeaderDecorator implements MessageBodyWriterInterceptor,  
  16.         AcceptedByMethod {  
  17.   
  18.     public boolean accept(Class declaring, Method method) {  
  19.         return method.isAnnotationPresent(GET.class);  
  20.     }  
  21.   
  22.     public void write(MessageBodyWriterContext context) throws IOException,  
  23.             WebApplicationException {  
  24.   
  25.         context.getHeaders().add("My-Header""custom");  
  26.         context.proceed();  
  27.     }  
  28. }  

参考http://docs.jboss.org/resteasy/docs/1.1.GA/userguide/html/Interceptors.html

你可能感兴趣的:(jboss,resteasy)