org.apache.xml.security.utils
Class ClassLoaderUtils

java.lang.Object
  extended byorg.apache.xml.security.utils.ClassLoaderUtils

public final class ClassLoaderUtils
extends java.lang.Object

This class is extremely useful for loading resources and classes in a fault tolerant manner that works across different applications servers. Do not touch this unless you're a grizzled classloading guru veteran who is going to verify any change on 6 different application servers.


Method Summary
static java.net.URL getResource(java.lang.String resourceName, java.lang.Class callingClass)
          Load a given resource.
static java.io.InputStream getResourceAsStream(java.lang.String resourceName, java.lang.Class callingClass)
          This is a convenience method to load a resource as a stream.
static java.util.List getResources(java.lang.String resourceName, java.lang.Class callingClass)
          Load a given resources.
static java.lang.Class loadClass(java.lang.String className, java.lang.Class callingClass)
          Load a class with a given name.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getResource

public static java.net.URL getResource(java.lang.String resourceName,
                                       java.lang.Class callingClass)
Load a given resource.

This method will try to load the resource using the following methods (in order):

Parameters:
resourceName - The name of the resource to load
callingClass - The Class object of the calling object

getResources

public static java.util.List getResources(java.lang.String resourceName,
                                          java.lang.Class callingClass)
Load a given resources.

This method will try to load the resources using the following methods (in order):

Parameters:
resourceName - The name of the resource to load
callingClass - The Class object of the calling object

getResourceAsStream

public static java.io.InputStream getResourceAsStream(java.lang.String resourceName,
                                                      java.lang.Class callingClass)
This is a convenience method to load a resource as a stream.

The algorithm used to find the resource is given in getResource()

Parameters:
resourceName - The name of the resource to load
callingClass - The Class object of the calling object

loadClass

public static java.lang.Class loadClass(java.lang.String className,
                                        java.lang.Class callingClass)
                                 throws java.lang.ClassNotFoundException
Load a class with a given name.

It will try to load the class in the following order:

Parameters:
className - The name of the class to load
callingClass - The Class object of the calling object
Throws:
java.lang.ClassNotFoundException - If the class cannot be found anywhere.