gpt4 book ai didi

tomcat6 - Web 应用程序 WAR 文件中包含的自定义 Tomcat Valve

转载 作者:行者123 更新时间:2023-12-04 12:51:01 25 4
gpt4 key购买 nike

我希望实现自定义 Valve 并使用 META-INF/context.xml 对其进行配置。

但目前,在部署期间解析 context.xml 时,Tomcat (6.0.32) 在我的自定义 Valve 实现上因 ClassNotFoundException 而死亡。

我的印象是我遇到了类加载上下文问题,但我不是 100% 确定我理解它。

是不是因为我的类位于 WEB-INF/classes 文件中而找不到我的类,而上下文级别的类加载器由于层次结构而无法定位该类?

提前致谢。

最佳答案

您无法加载 Valve s 来自 webapp 类加载器。如果你看 http://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html它显示了可用的类加载器。您必须使用 Bootstrap、System 或 Common 类加载器之一,因为 Valve在创建单个 webapp 类加载器之前处理定义:必须在 webapp 可用之前处理上下文。

将您的 Valve 单独包装在一个 jar 中,并将其复制到 $CATALINA_HOME/lib文件夹,你应该都设置好了。

关于tomcat6 - Web 应用程序 WAR 文件中包含的自定义 Tomcat Valve,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6138396/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com