Package org.apache.axis.utils
Class JWSClassLoader
- java.lang.Object
-
- java.lang.ClassLoader
-
- org.apache.axis.utils.JWSClassLoader
-
public class JWSClassLoader extends java.lang.ClassLoader
Class loader for JWS files. There is one of these per JWS class, and we keep a static Hashtable of them, indexed by class name. When we want to reload a JWS, we replace the ClassLoader for that class and let the old one get GC'ed.- Author:
- Glen Daniels (gdaniels@apache.org), Doug Davis (dug@us.ibm.com)
-
-
Constructor Summary
Constructors Constructor Description JWSClassLoader(java.lang.String name, java.lang.ClassLoader cl, java.lang.String classFile)
Construct a JWSClassLoader with a class name, a parent ClassLoader, and a filename of a .class file containing the bytecode for the class.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.io.InputStream
getResourceAsStream(java.lang.String resourceName)
Overloaded getResourceAsStream() so we can be sure to return the correct class file regardless of where it might live on our hard drive.-
Methods inherited from class java.lang.ClassLoader
clearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findClass, findLibrary, findLoadedClass, findResource, findResource, findResources, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
-
-
-
-
Constructor Detail
-
JWSClassLoader
public JWSClassLoader(java.lang.String name, java.lang.ClassLoader cl, java.lang.String classFile) throws java.io.FileNotFoundException, java.io.IOException
Construct a JWSClassLoader with a class name, a parent ClassLoader, and a filename of a .class file containing the bytecode for the class. The constructor will load the bytecode, define the class, and register this JWSClassLoader in the static registry.- Parameters:
name
- the name of the class which will be created/loadedcl
- the parent ClassLoaderclassFile
- filename of the .class file- Throws:
java.io.FileNotFoundException
java.io.IOException
-
-
Method Detail
-
getResourceAsStream
public java.io.InputStream getResourceAsStream(java.lang.String resourceName)
Overloaded getResourceAsStream() so we can be sure to return the correct class file regardless of where it might live on our hard drive.- Overrides:
getResourceAsStream
in classjava.lang.ClassLoader
- Parameters:
resourceName
- the resource to load (should be "classname.class")- Returns:
- an InputStream of the class bytes, or null
-
-