1

部署所有战争后,我需要编写一条日志行。Tomcat 的部署器是否有我可以挂钩的观察者模式?

在第一次启动时,jBoss/Tomcat 会发送一行,其中包含启动所花费的确切时间。不完美......但有效。

但是在热部署时,不会发送/写入通知/日志:(

(项目中大约有 100 个 servlet,按顺序列出它们是有风险的,然后猜测一旦最后一个初始化就完成了部署,所以让我们尝试跳过那种解决方案)

有什么提示吗?

4

2 回答 2

3

你看过 JBoss JMX API 吗?其中有一个 MainDeployer MBean 可让您管理部署,它有一个方法listIncompletelyDeployed(),您可以调用该方法来检查尚未部署的内容。ListenerServiceMBeanSupport 允许您订阅 JMX 通知。

好吧,我不能给你一个确切的解决方案,但是在 JMX 周围摸索可能会给你带来你需要的东西。

于 2011-07-07T12:21:42.473 回答
0

我认为这javax.servlet.ServletContextListener可能是你想要的:

http://download.oracle.com/javaee/5/api/javax/servlet/ServletContextListener.html

我看到创建和销毁上下文的生命周期事件。或许,结合 servlet init 和 destroy 方法用于单个 servlet,可能会有所帮助。

于 2011-07-07T12:17:34.050 回答