如果类在web-INF/lib的jar文件中,那么tomcat的web.xml过滤器中的类的路径是什么



我已经创建了一个过滤器类,它位于我的应用程序的WEB-INF/lib中的一个jar中。现在我需要在Tomcat/conf的web.xml中进行映射到该类文件。

我认为tomcat公开了WEB-INF/lib中的所有类文件,这样类就可以直接使用了。

Apache的部署指南引用

在Tomcat(或任何其他2.2或更高版本)中安装应用程序时Servlet容器),WEB-INF/classes/目录中的类,作为以及在WEB-INF/lib/目录中找到的JAR文件中的所有类,使特定web中的其他类可见应用因此,如果包含所有必需的库类在其中一个位置(一定要检查许可证是否重新分发您使用的任何第三方库的权限),您将简化web应用程序的安装--不需要对系统类路径(或在服务器)将是必要的。

我已将筛选器中的路径指定为com.(公司名称).(软件包名称).class_name

但是tomcat没有把它捡起来。我是不是做错了什么?

正如@BalusC在评论中提到的,不可能从tomcat的WEB.xml(tomcat/conf/WEB.xml)映射到应用程序的WEB-INF/lib。

解决方案是将过滤器类放在一个单独的jar中,并将其放在tomcat的lib(tomcat/lib)中。目前,这似乎是唯一可能的解决方案。

最新更新