繁体   English   中英

Tomcat应用程序部署侦听器

[英]Tomcat application deployment listener

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

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

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

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

servlet context init / destroy

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>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM