As every Java web developer knows hot deployment doesn’t usually work multiple times in a row. Usually the deployment fails due to memory issues (read: memory leaks).
Mattias Jiderhamn has also experienced this and got fed up with it, so he wrote a library that tries to mitigate the memory leaks.
His classloader leak prevention library is available from his blog and from GitHub. It’s licensed under Apache 2 license and it’s pretty easy to integrate with your project, you only need to add one listener class to you web.xml.
I suggest that you give it a try!