Tomcat:可以在应用程序部署期间排除 jars 吗?

Dmi*_*tri 8 tomcat java servlets

默认情况下,Tomcat 会阻止 webapps 加载多个 .jars,它们是 Tomcat 发行版的一部分(例如 servlet 和 JSP API)——是否可以配置其他人也被排除在外?

如果不能单独配置,Tomcat 是否提供了资源验证的扩展点?

我想使用共享日志库,并且需要确保错误的应用程序不会破坏配置。

例子

这就是我所指的(来自 Tomcat 启动日志):

Oct 1, 2011 5:53:40 AM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(D:\tomcat\myapp\WEB-INF\lib\servlet-api.jar) - jar not loaded.
See Servlet Spec 2.3, section 9.7.2.
Offending class: javax/servlet/Servlet.class
Run Code Online (Sandbox Code Playgroud)

小智 6

您可以使用Tomcat 文档中org.apache.catalina.loader.WebappClassLoader提到的扩展自定义加载器来检查/过滤 Web 应用程序加载的内容

查看实现过滤的标准的 Tomcat 实现 (7.0.19)WebAppClassLoader以开始使用。这可能足以重写类,只是把一些更多的项目进入领域和。javax.servlet.Servletprotected String[]triggerspackageTriggers