code: private void postSetValidationGroups()
      {
          if (this.validationGroups == null || this.validationGroups.matches(EMPTY_VALIDATION_GROUPS_PATTERN))
          {
              this.validationGroupsArray = DEFAULT_VALIDATION_GROUPS_ARRAY;
          }
          else
          {
              String[] classes = this.validationGroups.split(VALIDATION_GROUPS_DELIMITER);
              List<Class<?>> validationGroupsList = new ArrayList<Class<?>>(classes.length);
  
              for (String clazz : classes)
              {
                  clazz = clazz.trim();
                  if (!clazz.isEmpty())
                  {
                      Class<?> theClass = null;
                      ClassLoader cl = null;
                      if (System.getSecurityManager() != null) 
                      {
                          try 
                          {
                              cl = AccessController.doPrivileged(new PrivilegedExceptionAction<ClassLoader>()
                                      {
                                          public ClassLoader run() throws PrivilegedActionException
                                          {
                                              return Thread.currentThread().getContextClassLoader();
                                          }
                                      });
                          }
                          catch (PrivilegedActionException pae)
                          {
                              throw new FacesException(pae);
                          }
                      }
                      else
                      {
                          cl = Thread.currentThread().getContextClassLoader();
                      }
                      
                      try
                      {                        
                          // Try WebApp ClassLoader first
                          theClass = Class.forName(clazz,false,cl);
                      }
                      catch (ClassNotFoundException ignore)
                      {
                          try
                          {
                              // fallback: Try ClassLoader for BeanValidator (i.e. the myfaces.jar lib)
                              theClass = Class.forName(clazz,false, BeanValidator.class.getClassLoader());
                          }
                          catch (ClassNotFoundException e)
                          {
                              throw new RuntimeException("Could not load validation group", e);
                          }                        
                      }
                      // the class was found
                      validationGroupsList.add(theClass);
                  }
              }
                      
              this.validationGroupsArray = validationGroupsList.toArray(new Class[validationGroupsList.size()]);
          }
      }
docs: Fully initialize the validation groups if needed.
  If no validation groups are specified, the Default validation group is used.