a component will not
 be correctly unloaded without an explicit release. Though weak references
 are used for its keys, it is necessary to use strong references for its values.
 <p>
 If the abstract class <code>LogFactory</code> is
 loaded by the container classloader but a subclass of
 <code>LogFactory</code> [LogFactory1] is loaded by the component's
 classloader and an instance stored in the static map associated with the
 base LogFactory class, then there is a strong reference from the LogFactory
 class