【发布时间】:2013-03-22 16:02:10
【问题描述】:
我想用嵌入式码头测试我的 ServletContextListener。它在服务器停止时调用contextDestroyed,但在服务器启动时不调用contextInitialized。我该如何解决?
Server server = new Server(PORT);
ServletContextListener myListener = ...;
WebAppContext webapp = new WebAppContext();
webapp.addEventListener(myListener);
webapp.setServer(server);
server.setHandler(webapp);
server.start(); -> doesnt call myListener.contextInitialized()
server.stop(); -> call myListener.contextDestroyed()
【问题讨论】:
-
您是否尝试过设置上下文路径(以及可选的战争):
webapp.setContextPath("/"); webapp.setWar(warURL);)。如果不是,则没有上下文真正部署 -
@BGR setContextPath("/") 没有帮助。我没有任何 web.xml 文件。
-
@BGR,但 myListener.contextDestroyed() 按设计工作。
-
在 web.xml 文件中定义 myListener 是否有效?即使用
WebAppContext webapp = new WebAppContext(path, "/")而不是 webapp.addeventListener
标签: java jetty servlet-3.0