我在 Jboss 4.2.3.GA 上运行 Stripes Web 应用程序,并尝试在启动 JBoss 时调用一个方法。我像这样创建了一个 ServletContextListener:
public class TimerContextListener implements ServletContextListener {
@Inject
private TimerManager timerManager;
public void contextInitialized(ServletContextEvent servletcontextevent) {
((Injector) servletcontextevent.getServletContext().getAttribute(GuiceServletContextListener.KEY)).injectMembers(this);
timerManager.stopAllTimers();
timerManager.startTimer();
}
public void contextDestroyed(ServletContextEvent servletcontextevent) {
}
}
我在 web.xml 中添加了一个条目,如下所示:
<listener>
<listener-class>com.lawless.web.servletContextListeners.TimerContextListener</listener-class>
</listener>
但是当我启动我的服务器时,contextInitialized() 被调用了 3 次。知道问题可能是什么吗?谢谢。