code: public static Class<?> classForName(String type) throws ClassNotFoundException
      {
          if (type == null)
          {
              throw new NullPointerException("type");
          }
          try
          {
              // Try WebApp ClassLoader first
              return Class.forName(type, false, // do not initialize for faster startup
                  getContextClassLoader());
          }
          catch (ClassNotFoundException ignore)
          {
              // fallback: Try ClassLoader for ClassUtils (i.e. the myfaces.jar lib)
              return Class.forName(type, false, // do not initialize for faster startup
                  _ClassUtils.class.getClassLoader());
          }
      }
docs: Tries a Class.loadClass with the context class loader of the current thread first and automatically falls back to
  the ClassUtils class loader (i.e. the loader of the myfaces.jar lib) if necessary.
  
  @param type
  fully qualified name of a non-primitive non-array class
  @return the corresponding Class
  @throws NullPointerException
  if type is null
  @throws ClassNotFoundException