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 java.net.URLClassLoader
This is a class loader that loads JSP files as though they were
Java classes. It calls the compiler to compile the JSP file into a
servlet and then loads the generated class.
- Author:
- Anil K. Vijendran, Harish Prabandham
|
Constructor Summary |
JasperLoader(java.net.URL[] urls,
java.lang.String className,
java.lang.ClassLoader parent,
java.security.PermissionCollection permissionCollection,
java.security.CodeSource codeSource)
|
|
Method Summary |
protected java.security.PermissionCollection |
getPermissions(java.security.CodeSource codeSource)
Get the Permissions for a CodeSource. |
java.lang.Class |
loadClass(java.lang.String name)
Load the class with the specified name. |
java.lang.Class |
loadClass(java.lang.String name,
boolean resolve)
Load the class with the specified name, searching using the following
algorithm until it finds and returns the class. |
protected byte[] |
loadClassDataFromFile(java.lang.String fileName)
Load JSP class data from file. |
| Methods inherited from class java.net.URLClassLoader |
addURL, definePackage, findClass, findResource, findResources, getURLs, newInstance, newInstance |
| Methods inherited from class java.security.SecureClassLoader |
defineClass |
| Methods inherited from class java.lang.ClassLoader |
defineClass, defineClass, defineClass, definePackage, findLibrary, findLoadedClass, findSystemClass, getPackage, getPackages, getParent, getResource, getResourceAsStream, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, resolveClass, setSigners |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
JasperLoader
public JasperLoader(java.net.URL[] urls,
java.lang.String className,
java.lang.ClassLoader parent,
java.security.PermissionCollection permissionCollection,
java.security.CodeSource codeSource)
loadClass
public java.lang.Class loadClass(java.lang.String name)
throws java.lang.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 java.lang.ClassLoader
- Parameters:
name - Name of the class to be loaded- Throws:
java.lang.ClassNotFoundException - if the class was not found
loadClass
public java.lang.Class loadClass(java.lang.String name,
boolean resolve)
throws java.lang.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 java.lang.ClassLoader
- Parameters:
name - Name of the class to be loadedresolve - If true then resolve the class- Throws:
java.lang.ClassNotFoundException - if the class was not found
getPermissions
protected final java.security.PermissionCollection getPermissions(java.security.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 java.net.URLClassLoader
- Parameters:
CodeSource - where the code was loaded from- Returns:
- PermissionCollection for CodeSource
loadClassDataFromFile
protected byte[] loadClassDataFromFile(java.lang.String fileName)
- Load JSP class data from file.
Copyright © 2000 Apache Software Foundation. All Rights Reserved.