是否可以在 J2EE - 過濾器中使用通配符? (Is it possible to use wildcards within J2EE - fitlers?)


問題描述

是否可以在 J2EE - 過濾器中使用通配符? (Is it possible to use wildcards within J2EE - fitlers?)

I would like to apply a filter to severl url endings. The next configuraiton seems to work. 

<filter>
    <filter-name>LanguageFilter</filter-name>
    <filter-class>filters.LanguageFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>LanguageFilter</filter-name>
    <url-pattern>*.do</url-pattern>
</filter-mapping>
<filter-mapping>
    <filter-name>LanguageFilter</filter-name>
    <url-pattern>*.xml</url-pattern>
</filter-mapping>

Originally I asked if it was possible to use wildcards such as: 

    <url-pattern>*.do|*.xml</url-pattern>

But it does not seem to be possible. 


參考解法

方法 1:

There is no notion of such an operator in the standard, so you need two mappings. The specification of the mappings is available in the servlet specification. See this article for a link and section.

方法 2:

You could cheat a bit, and map /. to your filter class, then have your Filter Implementation take a parameter where .do|.xml are parsed and though your filter, technically is able to see too much, it does a simply check on whether or not you've given it an additional test, does the test, and either filter's or noops.

(by Sergio del AmoAlexander TorstlingNathan Feger)

參考文件

  1. Is it possible to use wildcards within J2EE - fitlers? (CC BY-SA 3.0/4.0)

#tomcat #servlet-filters






相關問題

Tomcat session-cluster:是生產級別的嗎?它可以擴展嗎? (Tomcat session-cluster: Is it production level? Does it scale?)

找不到 httpd.conf (Unable to find httpd.conf)

在 Ubuntu 12.04 上重新安裝 Apache Tomcat7 (Reinstalling Apache Tomcat7 on Ubuntu 12.04)

如何通過 HttpRequest 從連接的 Android 設備訪問本地 tomcat (How to access local tomcat via HttpRequest from connected Android device)

Ruby/Rails 開發人員的 JSP 工具? (JSP tools for a Ruby/Rails developer?)

IntelliJ Tomcat 部署工件的順序 (IntelliJ Tomcat Deployment Order of Artifacts)

沒有 HTTP 的 Java 應用服務器 (Java application server without HTTP)

Apache Spark 導致 Tomcat 正常關閉 (Apache Spark cause Tomcat to graceful shutdown)

讀取 Java Webapp 和 Java 普通應用程序中的通用外部屬性文件 (Read common external property file in Java Webapp and java normal app)

是否可以在 J2EE - 過濾器中使用通配符? (Is it possible to use wildcards within J2EE - fitlers?)

通過 Maven 運行 Tomcat 時如何將其綁定到特定接口? (How do you bind Tomcat to a specific interface when running it through Maven?)

Spring Boot 應用程序中的內部 tomcat 停止響應調用 (internal tomcat inside spring boot application stops responding to calls)







留言討論