Class JreMemoryLeakPreventionListener

All Implemented Interfaces:

public class JreMemoryLeakPreventionListener extends Object implements LifecycleListener
Provide a workaround for known places where the Java Runtime environment can cause a memory leak or lock files.

Memory leaks occur when JRE code 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 initialise these singletons when Tomcat's common class loader is the context class loader.

Locked files usually occur when a resource inside a JAR is accessed without first disabling Jar URL connection caching. The workaround is to disable this caching by default.

This listener must only be nested within Server elements.

  • Constructor Details

    • JreMemoryLeakPreventionListener

      public JreMemoryLeakPreventionListener()
  • Method Details

    • isAppContextProtection

      public boolean isAppContextProtection()
    • setAppContextProtection

      public void setAppContextProtection(boolean appContextProtection)
    • isUrlCacheProtection

      public boolean isUrlCacheProtection()
    • setUrlCacheProtection

      public void setUrlCacheProtection(boolean urlCacheProtection)
    • isDriverManagerProtection

      public boolean isDriverManagerProtection()
    • setDriverManagerProtection

      public void setDriverManagerProtection(boolean driverManagerProtection)
    • getClassesToInitialize

      public String getClassesToInitialize()
    • setClassesToInitialize

      public void setClassesToInitialize(String classesToInitialize)
    • getInitSeedGenerator

      public boolean getInitSeedGenerator()
    • setInitSeedGenerator

      public void setInitSeedGenerator(boolean initSeedGenerator)
    • lifecycleEvent

      public void lifecycleEvent(LifecycleEvent event)
      Description copied from interface: LifecycleListener
      Acknowledge the occurrence of the specified event.
      Specified by:
      lifecycleEvent in interface LifecycleListener
      event - LifecycleEvent that has occurred