2016-08-30 1 views
0

Я новичок в создании Java-рамки Wizard и пытается написать пользовательский ServletRequestListener, который будет действовать как фильтр до и после выполнения веб-запроса API.Как запустить пользовательский ServletRequestListener перед каждым вызовом API в Drop Wizard

Я создал следующий класс.

@WebListener 
public class CustomRequestListener implements ServletRequestListener { 

private static final Logger logger = LoggerFactory.getLogger(CustomRequestListener.class); 

@Override 
public void requestDestroyed(ServletRequestEvent servletRequestEvent) { 
    logger.info("Iam here"); 
     // do something 
} 

@Override 
public void requestInitialized(ServletRequestEvent servletRequestEvent) { 
     //..do something once the thread execution is over 
} 

Я хочу, чтобы выше фильтр выполнялся до вызова вызова Rest API. Не работает для меня, есть ли другой способ?

ответ

1

В зависимости от используемого API REST он может не использовать сервлеты, поэтому вы можете не видеть вызовы ServletReqestListener. См. How do I get Jersey 2.2 (JAX-RS) to generate log output, including Json request bodies о том, как добавить фильтр запросов регистрации, или см. Здесь https://jersey.java.net/documentation/latest/logging_chapter.html#logging для официальных джерси-документов при регистрации.

Смежные вопросы