gpt4 book ai didi

java - Tomcat应用部署监听器

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:09:31 25 4
gpt4 key购买 nike

我想知道如何监听 Tomcat Web 应用程序部署。每次应用程序从容器中取消部署或部署到容器时,我都希望调用我的监听器。

我已经调查了一下,发现一些监听器,即 LifecycleListener 可以通过 JMX 注册。但不幸的是,这个监听器对我来说还不够,因为它只在引擎/主机/上下文处于关闭或启动过程中时触发事件。

ContainerListener 相同,它基本上通知容器关闭和启动事件。

所以,我的问题基本上是:我应该实现哪个接口(interface)以及如何将它注册到 tomcat 以便在每次部署新应用程序时得到通知?

最佳答案

servlet 上下文初始化/销毁

import org.apache.juli.logging.Log;
import org.apache.juli.logging.LogFactory;

import javax.servlet.ServletContextListener;
import javax.servlet.ServletContextEvent;

public class AppContextListener implements ServletContextListener {

private static final Log logger = LogFactory.getLog(AppContextListener.class);

@Override
public void contextDestroyed(ServletContextEvent e) {
logger.warn("AppContext Delete: " + e.getServletContext().getContextPath());
}

@Override
public void contextInitialized(ServletContextEvent e) {
logger.warn("AppContext Create: " + e.getServletContext().getContextPath());
}

}

并放入tomcat/conf/web.xml

   <listener>
<listener-class>AppContextListener</listener-class>
</listener>

关于java - Tomcat应用部署监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15895997/

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