org.apache.jasper.servlet
Class JasperLoader
java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
org.apache.jasper.servlet.JasperLoader
public class JasperLoader
- extends URLClassLoader
Class loader for loading servlet class files (corresponding to JSP files)
and tag handler class files (corresponding to tag files).
- Author:
- Anil K. Vijendran, Harish Prabandham, Jean-Francois Arcand, Kin-man Chung
| Methods inherited from class java.lang.ClassLoader |
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JasperLoader
public JasperLoader(URL[] urls,
ClassLoader parent,
PermissionCollection permissionCollection,
CodeSource codeSource,
Map<String,byte[]> bytecodes)
loadClass
public Class loadClass(String name)
throws ClassNotFoundException
- Load the class with the specified name. This method searches for
classes in the same manner as
loadClass(String, boolean)
with false as the second argument.
- Overrides:
loadClass in class ClassLoader
- Parameters:
name - Name of the class to be loaded
- Throws:
ClassNotFoundException - if the class was not found
loadClass
public Class loadClass(String name,
boolean resolve)
throws ClassNotFoundException
- Load the class with the specified name, searching using the following
algorithm until it finds and returns the class. If the class cannot
be found, returns
ClassNotFoundException.
- Call
findLoadedClass(String) to check if the
class has already been loaded. If it has, the same
Class object is returned.
- If the
delegate property is set to true,
call the loadClass() method of the parent class
loader, if any.
- Call
findClass() to find this class in our locally
defined repositories.
- Call the
loadClass() method of our parent
class loader, if any.
If the class was found using the above steps, and the
resolve flag is true, this method will then
call resolveClass(Class) on the resulting Class object.
- Overrides:
loadClass in class ClassLoader
- Parameters:
name - Name of the class to be loadedresolve - If true then resolve the class
- Throws:
ClassNotFoundException - if the class was not found
findClass
public Class findClass(String className)
throws ClassNotFoundException
- Overrides:
findClass in class URLClassLoader
- Throws:
ClassNotFoundException
getPermissions
public final PermissionCollection getPermissions(CodeSource codeSource)
- Get the Permissions for a CodeSource.
Since this ClassLoader is only used for a JSP page in
a web application context, we just return our preset
PermissionCollection for the web app context.
- Overrides:
getPermissions in class URLClassLoader
- Parameters:
codeSource - Code source where the code was loaded from
- Returns:
- PermissionCollection for CodeSource
Copyright © 2007 Mort Bay Consulting. All Rights Reserved.