Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.xml.security.utils
Class ClassLoaderUtils

    java.lang.Object
      org.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<java.net.URL>` | `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):
  - From Thread.currentThread().getContextClassLoader()
  - From ClassLoaderUtil.class.getClassLoader()
  - callingClass.getClassLoader()

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

### getResources

    public static java.util.List<java.net.URL> 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):
  - From Thread.currentThread().getContextClassLoader()
  - From ClassLoaderUtil.class.getClassLoader()
  - callingClass.getClassLoader()

  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:
  - From Thread.currentThread().getContextClassLoader()
  - Using the basic Class.forName()
  - From ClassLoaderUtil.class.getClassLoader()
  - From the callingClass.getClassLoader()

  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.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD