Ich betreibe eine Stripes Web App auf Jboss 4.2.3.GA und versuche eine Methode aufzurufen, wenn ich JBoss starte. Ich habe ein ServletContextListener wie so:Warum wird contextInitialized() mehrmals aufgerufen?
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) {
}
}
und fügte ich einen Eintrag in web.xml wie folgt:
<listener>
<listener-class>com.lawless.web.servletContextListeners.TimerContextListener</listener-class>
</listener>
aber contextInitialized() wird immer 3 mal aufgerufen, wenn ich meine Server starten. Irgendeine Idee, was das Problem sein könnte? Vielen Dank.
Setzen Sie ein Grund 'System.out.println' an der Spitze Ihrer' contextInitialized' sicher zu sein, die Sie sehen, was Sie denken, Sie sehen. Übrigens habe ich diese Art von Problem gesehen: Ein bekannter Fehler beim Verbinden von Tomcat mit NetBeans zur Verwendung in der Entwicklung führt dazu, dass [Tomcat die Web-App doppelt startet] (https://stackoverflow.com/q/16702011/642706) . –