Class TomcatEmbeddedWebappClassLoader
java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
org.apache.catalina.loader.WebappClassLoaderBase
org.apache.catalina.loader.ParallelWebappClassLoader
org.springframework.boot.web.embedded.tomcat.TomcatEmbeddedWebappClassLoader
- All Implemented Interfaces:
Closeable
,AutoCloseable
,Lifecycle
,WebappProperties
,InstrumentableClassLoader
,PermissionCheck
Extension of Tomcat's
ParallelWebappClassLoader
that does not consider the
system classloader
. This is required to
ensure that any custom context class loader is always used (as is the case with some
executable archives).- Since:
- 2.0.0
- Author:
- Phillip Webb, Andy Clement
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.catalina.loader.WebappClassLoaderBase
WebappClassLoaderBase.PrivilegedFindClassByName, WebappClassLoaderBase.PrivilegedGetClassLoader, WebappClassLoaderBase.PrivilegedJavaseGetResource
Nested classes/interfaces inherited from interface org.apache.catalina.Lifecycle
Lifecycle.SingleUse
-
Field Summary
Fields inherited from class org.apache.catalina.loader.WebappClassLoaderBase
delegate, loaderPC, parent, permissionList, resourceEntries, resources, securityManager, sm
Fields inherited from interface org.apache.catalina.Lifecycle
AFTER_DESTROY_EVENT, AFTER_INIT_EVENT, AFTER_START_EVENT, AFTER_STOP_EVENT, BEFORE_DESTROY_EVENT, BEFORE_INIT_EVENT, BEFORE_START_EVENT, BEFORE_STOP_EVENT, CONFIGURE_START_EVENT, CONFIGURE_STOP_EVENT, PERIODIC_EVENT, START_EVENT, STOP_EVENT
-
Constructor Summary
ConstructorDescription -
Method Summary
Modifier and TypeMethodDescriptionprotected void
findResource
(String name) findResources
(String name) Class<?>
Methods inherited from class org.apache.catalina.loader.ParallelWebappClassLoader
copyWithoutTransformers
Methods inherited from class org.apache.catalina.loader.WebappClassLoaderBase
addLifecycleListener, addTransformer, check, checkStateForClassLoading, checkStateForResourceLoading, clearReferences, copyStateWithoutTransformers, destroy, doDefineClass, filter, findClass, findClassInternal, findLifecycleListeners, findLoadedClass0, getClearReferencesHttpClientKeepAliveThread, getClearReferencesLogFactoryRelease, getClearReferencesObjectStreamClassCaches, getClearReferencesRmiTargets, getClearReferencesStopThreads, getClearReferencesStopTimerThreads, getClearReferencesThreadLocals, getContextName, getDelegate, getHostName, getJavaseClassLoader, getPermissions, getResource, getResourceAsStream, getResources, getResources, getServiceName, getSkipMemoryLeakChecksOnJvmShutdown, getState, getStateName, getURLs, getWebappName, hasLoggingConfig, init, isPackageSealed, loadClass, modified, refreshPolicy, removeLifecycleListener, removeTransformer, setClearReferencesHttpClientKeepAliveThread, setClearReferencesLogFactoryRelease, setClearReferencesObjectStreamClassCaches, setClearReferencesRmiTargets, setClearReferencesStopThreads, setClearReferencesStopTimerThreads, setClearReferencesThreadLocals, setDelegate, setJavaseClassLoader, setResources, setSkipMemoryLeakChecksOnJvmShutdown, start, stop, toString
Methods inherited from class java.net.URLClassLoader
close, definePackage, newInstance, newInstance
Methods inherited from class java.security.SecureClassLoader
defineClass, defineClass
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
Constructor Details
-
TomcatEmbeddedWebappClassLoader
public TomcatEmbeddedWebappClassLoader() -
TomcatEmbeddedWebappClassLoader
-
-
Method Details
-
findResource
- Overrides:
findResource
in classWebappClassLoaderBase
-
findResources
- Overrides:
findResources
in classWebappClassLoaderBase
- Throws:
IOException
-
loadClass
- Overrides:
loadClass
in classWebappClassLoaderBase
- Throws:
ClassNotFoundException
-
addURL
- Overrides:
addURL
in classWebappClassLoaderBase
-