我是新手删除向导java框架并尝试编写自定义ServletRequestListener,它将在执行API Web请求之前和之后充当过滤器。
我创建了以下课程。
@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调用之前执行上面的过滤器。 它对我不起作用,还有其他办法吗?
答案 0 :(得分:1)
根据您使用的REST API,它可能不使用servlet,因此您可能看不到对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。