KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm building a relatively simple web-app where the main servlet implements the ServletContextListener interface to determine whether the context has been started or stopped. I've implemented my contextInitialized , contextDestroyed , init and destroy methods (both init and destroy call super on the base class). I've currently implemented no real functionality other than that I've initialized log4j in the contextInitialized method where I load the log4j.properties file. When I start and stop the Tomcat server from within Eclipse however, everything is called in the correct order (I'm using some System.out.println 's to test this) but after about 10 seconds of stopping the server I'm presented with an Eclipse popup stating the following: Server Tomcat v6.0 Server at localhost is not responding. Do you want to terminate this server? Click OK to terminate the server or click Cancel to continue waiting. This is what's printed in my Eclipse console when I stop the server: 04/01/2010 7:39:13 PM org.apache.catalina.core.StandardService stop INFO: Stopping service Catalina contextDestroyed 04/01/2010 7:39:13 PM org.apache.coyote.http11.Http11Protocol destroy INFO: Stopping Coyote HTTP/1.1 on http-8080 And after the last INFO message it just hangs there until the popup appears. If I choose to wait, press Cancel, Eclipse becomes unusable and I have to kill the Eclipse process from a terminal. Any input on how to solve this issue would be greatly appreciated. UPDATE: The problem was caused by a non-daemon thread that I'm starting within my init method (forgot to mention that :). The problem was solved by explicitly stopping the
Tags (comma-separated)
Save Edits
Cancel