@SuppressWarnings("unchecked")
	public static <T> Class<? extends T> loadClass(final Class<T> clazz,
												   final ClassLoader classLoader, final String className)
			throws ClassNotFoundException, IllegalAccessException {
		NullArgumentException.validateNotNull(clazz, "Class");
		NullArgumentException.validateNotNull(classLoader, "ClassLoader");
		NullArgumentException.validateNotNull(className, "Servlet Class");
		return (Class<? extends T>) classLoader.loadClass(className);
	}
@ SuppressWarnings ( "unchecked" ) public static < T > Class < ? extends T > loadClass ( final Class < T > clazz , final ClassLoader classLoader , final String className ) throws ClassNotFoundException , IllegalAccessException { NullArgumentException . validateNotNull ( clazz , "Class" ) ; NullArgumentException . validateNotNull ( classLoader , "ClassLoader" ) ; NullArgumentException . validateNotNull ( className , "Servlet Class" ) ; return ( Class < ? extends T > ) classLoader . loadClass ( className ) ; }
Load a class from class name.

@param clazz       class of the required object
@param classLoader class loader to use to load the class
@param className   class name for the class to load
@return class object
@throws NullArgumentException  if any of the parameters is null
@throws ClassNotFoundException re-thrown
@throws IllegalAccessException re-thrown