Class JWSClassLoader

java.lang.Object
java.lang.ClassLoader
org.apache.axis.utils.JWSClassLoader

public class JWSClassLoader extends 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 Details

    • JWSClassLoader

      public JWSClassLoader(String name, ClassLoader cl, String classFile) throws FileNotFoundException, 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/loaded
      cl - the parent ClassLoader
      classFile - filename of the .class file
      Throws:
      FileNotFoundException
      IOException
  • Method Details

    • getResourceAsStream

      public InputStream getResourceAsStream(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 class ClassLoader
      Parameters:
      resourceName - the resource to load (should be "classname.class")
      Returns:
      an InputStream of the class bytes, or null