gpt4 book ai didi

servlets - FILterChain异常处理

转载 作者:行者123 更新时间:2023-12-02 00:55:32 25 4
gpt4 key购买 nike

我正在尝试了解涉及方法安全性和基于 URL 的安全性的 Spring 安全性。基于 URL 的安全性完全基于 Servlet Filters。在某些情况下,Spring 安全性会处理过滤器链抛出的异常以完成其工作。

我知道 Servlet 容器如何执行过滤器,但我对 filterChain 如何处理过滤器链中的 doFilter 方法抛出的异常特别感兴趣。

最佳答案

I am particularly interested in how filterChain handle exceptions thrown by doFilter method in filter chain.

它对他们没有任何作用。换句话说,它只是让它们冒泡。它们最终会出现在 servletcontainer 的内置异常处理程序中,该处理程序已经知道如何根据 <error-page> 处理它们。 web.xml中的配置.

但是您可以通过放置 FilterChain#doFilter() 来自己控制它调用try-catch像这样阻止:

try {
chain.doFilter(request, response) {
} catch (ServletException e) {
Throwable cause = e.getRootCause();
// ... (handle it)
}

如果链下的任何其他东西(过滤器、servlet、jsp 等)抛出未捕获的异常,它将在那里结束。

另见:

关于servlets - FILterChain异常处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35738662/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com