public static Class<?> getClass(ClassLoader classLoader, String className) {
        try {

            final Class<?> clazz;

            if (PRIMITIVE_MAPPING.containsKey(className)) {

                String qualifiedName = "[" + PRIMITIVE_MAPPING.get(className);
                clazz = Class.forName(qualifiedName, true, classLoader).getComponentType();
            } else {
                clazz = Class.forName(determineQualifiedName(className), true, classLoader);
            }
            return clazz;
        } catch (ClassNotFoundException ex) {

            int lastSeparatorIndex = className.lastIndexOf(PACKAGE_SEPARATOR_CHARACTER);

            if (lastSeparatorIndex != -1) {
                return getClass(classLoader, className.substring(0, lastSeparatorIndex) + INNER_CLASS_SEPARATOR_CHAR
                        + className.substring(lastSeparatorIndex + 1));
            }
            throw new IllegalArgumentException("Unable to unmarshall String to Class: " + className);
        }
    }
public static Class < ? > getClass ( ClassLoader classLoader , String className ) { try { final Class < ? > clazz ; if ( PRIMITIVE_MAPPING . containsKey ( className ) ) { String qualifiedName = "[" + PRIMITIVE_MAPPING . get ( className ) ; clazz = Class . forName ( qualifiedName , true , classLoader ) . getComponentType ( ) ; } else { clazz = Class . forName ( determineQualifiedName ( className ) , true , classLoader ) ; } return clazz ; } catch ( ClassNotFoundException ex ) { int lastSeparatorIndex = className . lastIndexOf ( PACKAGE_SEPARATOR_CHARACTER ) ; if ( lastSeparatorIndex != - 1 ) { return getClass ( classLoader , className . substring ( 0 , lastSeparatorIndex ) + INNER_CLASS_SEPARATOR_CHAR + className . substring ( lastSeparatorIndex + 1 ) ) ; } throw new IllegalArgumentException ( "Unable to unmarshall String to Class: " + className ) ; } }
Attempt to load the class matching the given qualified name
@param classLoader Classloader to use
@param className The classname to use
@throws IllegalArgumentException If the class cannot be loaded
@return The {@link Class} representing the given class