gpt4 book ai didi

Tomcat 显示部署的应用程序名称而不是 war 文件

转载 作者:行者123 更新时间:2023-11-28 21:50:02 29 4
gpt4 key购买 nike

我在 tomcat 6 中部署了几个应用程序,它们被路由到不同的虚拟主机,因此它们都有单独的上下文根并命名为 ROOT.war。当 tomcat 启动时,在 catalina.out 中我看到了这个:

INFO: Deploying web application archive ROOT.war
Feb 11, 2011 1:33:55 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive ROOT.war
Feb 11, 2011 1:33:56 PM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive ROOT.war
Feb 11, 2011 1:33:57 PM org.apache.catalina.startup.HostConfig deployWAR

应用程序日志被路由到不同的位置,我无法判断部署了哪些应用程序以及部署顺序。

我想从 war 的 web.xml 而不是 ROOT.war 中查看应用程序名称。有谁知道在不启用调试和使日志困惑的情况下执行此操作的方法吗?

最佳答案

Tomcat 不支持有序的 Web 应用程序部署(至少在版本 5-6 中)法律上事实上您可以在 conf/server.xml 中按所需顺序放置对不同 webapp 的引用,它(可能)会起作用。然而,这可以归类为黑客攻击。这种方法的另一个缺点是您必须在 server.xml 中静态定义内容。

另一种选择是在每个 webapp 中创建一个单独的 DeploymentInfoLogger(或任何名称)类,并使用此类的名称静态初始化记录器。仅为此类启用调试级别(这样您就不会获得大量不需要的日志数据)。将 appender 配置为与 catalina.out 相同(我想是 ConsoleAppender?)。使此类成为上下文监听器并在 webapp 启动时记录一些有意义的内容。这当然只有在您事先知道此 Web 应用程序将服务于某个特定的虚拟主机时才有可能。如果没有,您可能可以使用一些 native Tomcat API 从配置中确定这一点。

Sėkmės :)

关于Tomcat 显示部署的应用程序名称而不是 war 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4969655/

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