<filter-mapping> 中的多个 <url-pattern> 不工作

Multiple <url-pattern> in <filter-mapping> not working

我在 spring 应用程序的 web.xml 中使用了多个过滤器。我的一些过滤器有多个 url-pattern 来作用于这些 url,如下所示:

<filter>
    <display-name>AuditLogFilter</display-name>
    <filter-name>AuditLogFilter</filter-name>
    <filter-class>org.somePackages.log.AuditLogFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>AuditLogFilter</filter-name>
    <url-pattern>/portal/*</url-pattern>
    <url-pattern>/view/*</url-pattern>
    <url-pattern>/rest/**/front</url-pattern>
</filter-mapping>

但我发现 AuditLogFilter 并没有对所有这些 url-patterns 起作用。有什么解决办法吗?

我终于解决了我的问题,方法是将 AuditLogFilter 的顺序更改为 web.xml 中过滤器的顶部。换句话说,我将 <filter><filter-mapping> 部分放在 filter 定义的上方,而不是 web.xml 文件的末尾。