Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 保存整个web请求,Tomcat 9.0_Java_Tomcat_Servlet Filters - Fatal编程技术网

Java 保存整个web请求,Tomcat 9.0

Java 保存整个web请求,Tomcat 9.0,java,tomcat,servlet-filters,Java,Tomcat,Servlet Filters,我使用的API没有很好的文档记录,我试图保存对服务器的请求,以便更好地理解内部工作 一些初步研究得出了两种可能的解决方案: A) 过滤器 B) 请求卸载阀 以下是一些我不了解如何使用的有用建议: 我的问题不在于上面链接中提供的解决方案,而是我不知道如何在Tomcat中使用它们 例如,在第一个链接中,OP POST: public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,

我使用的API没有很好的文档记录,我试图保存对服务器的请求,以便更好地理解内部工作

一些初步研究得出了两种可能的解决方案:

A) 过滤器

B) 请求卸载阀


以下是一些我不了解如何使用的有用建议:


我的问题不在于上面链接中提供的解决方案,而是我不知道如何在Tomcat中使用它们

例如,在第一个链接中,OP POST:

public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse,
                     FilterChain chain) throws IOException, ServletException {
    HttpServletRequest request = (HttpServletRequest) servletRequest;
    LOG.debug("payload: " + requestWrapper.getRequestBody());
和web.xml:


PayloadLoggingFilter
com.host.PayloadLoggingFilter
PayloadLoggingFilter
/资源/*
太棒了!除了如果我将上面的代码添加到我的web.xml中,我的本地主机TomCat将只返回404,我不知道应该将Java代码放在哪里,因为它不能自己编译,并且肯定需要一些依赖项


非常感谢您的帮助。

doFilter方法属于您必须编写的类。类必须实现
过滤器
接口。有一些教程一步一步地描述了这一点。例如然后类的完全限定名进入
标记。关于
,您的示例将过滤到达
/resources/*
的所有内容。你的web应用几乎肯定没有这样的URL模式。教程应该涵盖这一点。这应该让你开始了。谢谢你,这篇教程正是我要搜索的内容!
doFilter
方法属于必须编写的类。类必须实现
过滤器
接口。有一些教程一步一步地描述了这一点。例如然后类的完全限定名进入
标记。关于
,您的示例将过滤到达
/resources/*
的所有内容。你的web应用几乎肯定没有这样的URL模式。教程应该涵盖这一点。这应该让你开始了。谢谢你,这篇教程正是我要搜索的内容!
<filter>
    <filter-name>PayloadLoggingFilter</filter-name>
    <filter-class>com.host.PayloadLoggingFilter</filter-class>
</filter>

<filter-mapping>
    <filter-name>PayloadLoggingFilter</filter-name>
    <url-pattern>/resources/*</url-pattern>
</filter-mapping>