Class ClassLoaderUtils
- java.lang.Object
- 
- org.apache.cxf.common.classloader.ClassLoaderUtils
 
- 
 public final class ClassLoaderUtils extends 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.
- 
- 
Nested Class SummaryNested Classes Modifier and Type Class Description static classClassLoaderUtils.ClassLoaderHolder
 - 
Method SummaryAll Methods Static Methods Concrete Methods Modifier and Type Method Description static StringgetClassLoaderName(Class<?> type)static URLgetResource(String resourceName, Class<?> callingClass)Load a given resource.static InputStreamgetResourceAsStream(String resourceName, Class<?> callingClass)This is a convenience method to load a resource as a stream.static List<URL>getResources(String resourceName, Class<?> callingClass)Load a given resources.static ClassLoadergetURLClassLoader(URL[] urls, ClassLoader parent)static ClassLoadergetURLClassLoader(List<URL> urlList, ClassLoader parent)static Class<?>loadClass(String className, Class<?> callingClass)Load a class with a given name.static <T> Class<? extends T>loadClass(String className, Class<?> callingClass, Class<T> type)static Class<?>loadClassFromContextLoader(String className)static ClassLoaderUtils.ClassLoaderHoldersetThreadContextClassloader(ClassLoader newLoader)
 
- 
- 
- 
Method Detail- 
setThreadContextClassloaderpublic static ClassLoaderUtils.ClassLoaderHolder setThreadContextClassloader(ClassLoader newLoader) 
 - 
getURLClassLoaderpublic static ClassLoader getURLClassLoader(URL[] urls, ClassLoader parent) 
 - 
getURLClassLoaderpublic static ClassLoader getURLClassLoader(List<URL> urlList, ClassLoader parent) 
 - 
getResourcepublic static URL getResource(String resourceName, 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
 
 - 
getResourcespublic static List<URL> getResources(String resourceName, 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
 
 - 
getResourceAsStreampublic static InputStream getResourceAsStream(String resourceName, 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
 
 - 
loadClasspublic static Class<?> loadClass(String className, Class<?> callingClass) throws 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:
- ClassNotFoundException- If the class cannot be found anywhere.
 
 - 
loadClasspublic static <T> Class<? extends T> loadClass(String className, Class<?> callingClass, Class<T> type) throws ClassNotFoundException - Throws:
- ClassNotFoundException
 
 - 
loadClassFromContextLoaderpublic static Class<?> loadClassFromContextLoader(String className) throws ClassNotFoundException - Throws:
- ClassNotFoundException
 
 
- 
 
-