所有webapps的tomcat过滤器

lol*_*olo 5 java tomcat

问题:我想对所有webapps进行过滤.

我创建了一个用于监视对apache tomcat服务器的请求的过滤器.

为了举例,它被称为MyFilter.我在netbeans中创建了它,它创建了2个独立的目录:

webpages - contains:
    META-INF
    WEB-INF
    index.jsp (a file which i created for viewing monitored data)

source packages
    my.package/MyFilter
Run Code Online (Sandbox Code Playgroud)

同样当我从netbeans执行它时,它部署它并将我发送到http:// localhost:8080/MyFilter

每当我在/ MyFilter/somepath下查看页面时 - 它都会运行过滤器.

我希望过滤器在所有路径上运行,而不仅仅是对于webapp

我在哪里需要找到项目文件?我需要哪些项目文件?我应该编辑conf/web.xml并添加过滤器吗?或者我应该只在特定的webapp的web.xml中?

编辑:

我将生成的.war文件复制到tomcat/webapps中

当我启动tomcat时,它会创建一个目录(tomcat/webapps/MyFilter /)

我将过滤器添加到tomcat/conf/web.xml中.当我启动它时,它无法加载:// localhost:8080 /但成功加载(和过滤器):// localhost:8080/MyFilter

Joa*_*uer 10

根据定义,过滤器只能在其定义的Web应用程序中运行.

你可以在定义它web.xmlconf/Tomcat的目录将它包含在默认情况下部署到Tomcat的所有Web应用程序(注意,您也想需要使过滤器类可用于所有的Web应用程序,可能是把它在lib/Tomcat的目录).

或者,您可以实现Tomcat Valve,它在概念上类似于过滤器,但可以安装在Tomcat中的Engine,Host或Context上.