public class WebAppClassLoader extends URLClassLoader
WebAppContext.setParentLoaderPriority(boolean)
method and influenced with WebAppContext.isServerClass(String)
and
WebAppContext.isSystemClass(String)
.
If no parent class loader is provided, then the current thread
context classloader will be used. If that is null then the
classloader that loaded this class is used as the parent.Modifier and Type | Class and Description |
---|---|
static interface |
WebAppClassLoader.Context
The Context in which the classloader operates.
|
Constructor and Description |
---|
WebAppClassLoader(ClassLoader parent,
WebAppClassLoader.Context context)
Constructor.
|
WebAppClassLoader(WebAppClassLoader.Context context)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
void |
addClassPath(Resource resource) |
void |
addClassPath(String classPath) |
void |
addJars(Resource lib)
Add elements to the class path for the context from the jar and zip files found
in the specified resource.
|
WebAppClassLoader.Context |
getContext() |
String |
getName() |
PermissionCollection |
getPermissions(CodeSource cs) |
URL |
getResource(String name)
Get a resource from the classloader
NOTE: this method provides a convenience of hacking off a leading /
should one be present.
|
Enumeration<URL> |
getResources(String name) |
Class<?> |
loadClass(String name) |
protected Class<?> |
loadClass(String name,
boolean resolve) |
void |
setName(String name) |
String |
toString() |
addURL, close, definePackage, findClass, findResource, findResources, getResourceAsStream, getURLs, newInstance, newInstance
defineClass, defineClass
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findSystemClass, getClassLoadingLock, getPackage, getPackages, getParent, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, registerAsParallelCapable, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
public WebAppClassLoader(WebAppClassLoader.Context context) throws IOException
IOException
public WebAppClassLoader(ClassLoader parent, WebAppClassLoader.Context context) throws IOException
IOException
public String getName()
public void setName(String name)
name
- the name of the classloaderpublic WebAppClassLoader.Context getContext()
public void addClassPath(Resource resource) throws IOException
resource
- Comma or semicolon separated path of filenames or URLs
pointing to directories or jar files. Directories should end
with '/'.IOException
public void addClassPath(String classPath) throws IOException
classPath
- Comma or semicolon separated path of filenames or URLs
pointing to directories or jar files. Directories should end
with '/'.IOException
public void addJars(Resource lib)
lib
- the resource that contains the jar and/or zip files.public PermissionCollection getPermissions(CodeSource cs)
getPermissions
in class URLClassLoader
public Enumeration<URL> getResources(String name) throws IOException
getResources
in class ClassLoader
IOException
public URL getResource(String name)
getResource
in class ClassLoader
public Class<?> loadClass(String name) throws ClassNotFoundException
loadClass
in class ClassLoader
ClassNotFoundException
protected Class<?> loadClass(String name, boolean resolve) throws ClassNotFoundException
loadClass
in class ClassLoader
ClassNotFoundException
Copyright © 1995-2015 Mort Bay Consulting. All Rights Reserved.