Information
The JRE Memory Leak Prevention Listener provides work-arounds for known places where the Java Runtime environment uses the context class loader to load a singleton as this will cause a memory leak if a web application class loader happens to be the context class loader at the time. The work-around is to initialize these singletons when this listener starts as Tomcat's common class loader is the context class loader at that time. It also provides work-arounds for known issues that can result in locked JAR files.
Enabling the JRE Memory Leak Prevention Listener provides work-arounds for preventing memory leaks.
Solution
Uncomment the JRE Memory Leak Prevention Listener in $CATALINA_HOME/conf/server.xml
<Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />