【问题标题】:How does request pass through filter even though servlet mapping is not present? [closed]即使 servlet 映射不存在,请求如何通过过滤器? [关闭]
【发布时间】:2017-06-19 18:52:12
【问题描述】:

我有 web.xml,它只包含一个过滤器,它映射到一个特定的 URL 模式。 如果我给出一个与模式匹配的 url。它通过过滤器返回并给出 404 状态。我知道这是因为 web.xml 中没有映射资源。为什么会通过过滤器?

我可以保留过滤器响应的包装器并将响应修改为有意义的响应而不是提供 404 吗?

【问题讨论】:

    标签: java servlets jakarta-ee


    【解决方案1】:

    如果您知道过滤器后面没有任何内容,并且您想单独在过滤器中完成所有工作,则无需致电chain.doFilter()

    例子:

    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        response.getWriter().println("Nothing passes further!");
        response.getWriter().flush();
    }
    

    【讨论】:

    • 投反对票的人,为什么投反对票?
    • 不知道为什么有人投了反对票。但这正是我想要的。我认为我们需要强制使用连锁功能。
    猜你喜欢
    • 2011-04-10
    • 1970-01-01
    • 2012-02-19
    • 2013-10-05
    • 2012-06-24
    • 1970-01-01
    • 2012-01-03
    • 2011-06-29
    • 2015-04-27
    相关资源
    最近更新 更多