public static Class classForName(String className) throws ClassNotFoundException {
try
{
// trying with the default ClassLoader
return Class.forName(className);
}
catch (ClassNotFoundException cnfe)
{
try
{
// trying with thread ClassLoader
Thread thread = Thread.currentThread();
ClassLoader threadClassLoader = thread.getContextClassLoader();
return Class.forName(className, false, threadClassLoader);
}
catch (ClassNotFoundException cnfe2)
{
throw cnfe2;
}
}
}
Tries to load a class with more classloaders. Can be useful in J2EE applications if jar is loaded from a
different classloader than user classes. If class is not found using the standard classloader, tries whit the
thread classloader. |