I noticed that when I was deploying (and especially reploying) WAR files to Apache Tomcat, sometimes the deployment would not be complete. In particular, the exploded WAR directory only contained a small subset of the files in the WAR. Furthermore, when I undeployed the WAR, portions of the exploded directory would not be deleted. I found a solution, however. Edit the CONTEXT element in context.xml to have the attribute antiJARLocking="true". You can do this for the context descriptor for the individual application (if any), or by editing the global context.xml in the Tomcat configuration directory.