如何在过滤器映射中排除 url [重复]

Posted

技术标签:

【中文标题】如何在过滤器映射中排除 url [重复]【英文标题】:how to exclude a url in filtermapping [duplicate] 【发布时间】:2013-01-29 22:54:11 【问题描述】:

web.xml

<filter>
    <filter-name>SessionCheckFilter</filter-name>
    <filter-class>filter.SessionCheckFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>SessionCheckFilter</filter-name>
    <url-pattern>/faces/app/admin/*</url-pattern>
</filter-mapping>

我试图仅排除/faces/app/admin/index.xhtml,有什么办法吗?

如果web.xml中没有排除url模式,也许我可以操纵doFilter()方法来排除url?

【问题讨论】:

另一种方式:coderanch.com/t/169859/java-Web-Component-SCWCD/certification/… 【参考方案1】:
      public void doFilter(ServletRequest servletRequest,
                     ServletResponse servletResponse,
                     FilterChain filterChain) throws IOException,
                                                     ServletException 
        HttpServletRequest request=(HttpServletRequest)servletRequest;

           String path = request.getPathInfo();
          if ((path != null) && (!path.equals("your path"))
         // write filter logic
            
     

试试上面的代码。

【讨论】:

这不起作用。请求对象是什么? servletRequest only--你能发布你的 web.xml 和过滤代码 你需要改变你的答案。您缺少对 HttpServletRequest 的强制转换。这实际上包含 getPathInfo() 方法。

以上是关于如何在过滤器映射中排除 url [重复]的主要内容,如果未能解决你的问题,请参考以下文章

排除子目录的过滤器映射 url 模式

如何在scrapy中根据url过滤重复请求

如何在 java Servlet 过滤器中更改传入 URL 并将请求重定向到新 URL [重复]

如何从 springSessionRepositoryFilter 中排除资源?

在 ServletRequests 上使用 java Filter 时如何检查 url 是不是具有有效映射

在 Java 过滤器中获取配置的 url 模式 [重复]