gpt4 book ai didi

java - 如何在 Tomcat 中中断部署/拒绝应用程序?

转载 作者:行者123 更新时间:2023-11-28 22:13:47 26 4
gpt4 key购买 nike

我正在尝试验证应用程序启动时的一些条件,例如系统中是否存在关键文件。为此,我使用了 SerlvetContextListener,它会在启动时测试一系列条件。

如果不满足这些条件中的任何一个,我怎样才能使应用程序拒绝在 Tomcat 中部署?我可以抛出一个异常,并在日志中捕获它,但我希望应用程序根本不启动。即使 Tomcat 服务启动失败也是一种解决方案。

什么是最简单的方法?我应该尝试连接到 Tomcat 管理器并取消部署该应用程序吗?

最佳答案

嗯...

根据您最初的问题,如果某些文件不存在(或不满足其他条件),您希望应用程序“根本不启动”。从逻辑上讲,条件检查不可能是应用程序的一部分(如果检查是作为应用程序的一部分进行的——比如说,在启动时——那么必须启动应用程序才能进行这些检查)发生)。

所以:

  1. 如果您不希望应用程序启动根本除非满足某些条件,那么您的解决方案必须在应用程序外部。例如,您可以编写自己的 Tomcat 启动脚本,它会先检查您的条件,然后才启动 Tomcat。

  2. 如果您不介意应用程序启动和执行检查,那么 ServletContextListener 正是您应该利用的。从 contextInitialized() 中抛出异常将导致应用程序“无法”处理请求。或者,如果检查未通过,您可以与 Tomcat 的 MBean 通信以停止应用程序。

关于java - 如何在 Tomcat 中中断部署/拒绝应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14697174/

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