code: @Override
      public void validate(Class<?> clazz) {
  
          if (log.isDebugEnabled())
              log.debug("Validating " + clazz.getName());
  
          // Is Entity?
          if (!checkValidClass(clazz)) {
  
              throw new RuleValidationException(clazz.getName() + " is not a valid jpa entity.");
          }
  
          // must have a default no-argument constructor
          boolean flag = false;
          try {
              Constructor[] constructors = clazz.getDeclaredConstructors();
              for (Constructor constructor : constructors) {
                  if ((Modifier.isPublic(constructor.getModifiers()) || Modifier.isProtected(constructor.getModifiers()))
                      && constructor.getParameterTypes().length == 0) {
                      flag = true;
                      break;
                  }
              }
              if (!flag) {
                  throw new Exception();
              }
          } catch (Exception e) {
              throw new RuleValidationException(clazz.getName()
                  + " must have a default public or protected no-argument constructor.");
          }
      }
docs: /*
  (non-Javadoc)
  
  @see com.impetus.kundera.validation.rules.AbstractEntityRule#validate(java .lang.Class)