Isn't it mandatory for the servlet engines/app.servers to call this method when they are shut down? I am testing the servlets with Resin 2.0.5 and Tomcat 3.3.1. My Servlet has a log statement in the destroy() method which never gets written to the log file (I see all the other log statements), which makes me believe that this method is not being called. So, is this method only called when the servlet is 'unloaded'? If yes, how will the servlets be able to clean up after themselves in case the app.server shuts down? -Bala.