我想知道如何监听 Tomcat Web 应用程序部署。我希望每次从容器中取消部署应用程序或将应用程序部署到容器时都调用我的侦听器。
我已经调查了一下并发现一些听众,即LifecycleListener
可以通过 JMX 注册。但不幸的是,这个监听器对我来说还不够,因为它在引擎/主机/上下文处于关闭或启动过程时触发事件。
与ContainerListener
基本上通知容器关闭和启动事件。
所以,我的问题基本上是:我应该实现哪个接口以及如何将其注册到 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>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)