示例#1
0
  public <T extends Validator> T getValidatorInstance(Class<T> validator)
      throws InstantiationException {
    T v = null;
    try {
      v = validator.newInstance();
    } catch (Exception ex) {
      throw new InstantiationException();
    }

    ctxService.autowire(v);
    return v;
  }
示例#2
0
 /**
  * Devuelve un validador simple, es una instancia de utilidad, ya que sólo sirve para llamar a los
  * métodos públicos que no sean ni validate ni supports.
  *
  * @see SimpleValidator
  * @return un SimpleValidator
  */
 public Validator getSimpleValidatorInstance() {
   try {
     Validator v = new SimpleValidator();
     ctxService.autowire(v);
     return v;
   } catch (IllegalArgumentException ex) {
     throw ex;
   } catch (Throwable ex) {
     logger.fatal(ex.getMessage(), ex);
     throw new IllegalStateException(ex);
   }
 }
示例#3
0
  /**
   * Valida un objeto a partir de un validador concreto. <br>
   * El validador debe extender la clase Validator y soportar (verificado mediante el método
   * supports) el objeto a validar. Si no, lanza una IllegalArgumentException. <br>
   * El validador puede tener anotaciones de dependencias de Spring.
   *
   * @see com.lynxspa.sdm.web.services.validation.Validator
   * @see BindingResult#hasFieldErrors()
   * @param object El objeto a validar
   * @param validator El validador a utilizar.
   * @param BindingResult El resultado de la validación, es un objeto BindingResult de Spring. Para
   *     verificar que no hay errores de validación hay que llamar al método hasFieldErrors.
   * @param result
   */
  public void validate(Object object, Class<? extends Validator> validator, BindingResult result) {
    try {
      Validator v = validator.newInstance();
      ctxService.autowire(v);

      validate(object, v, result);
    } catch (IllegalArgumentException ex) {
      throw ex;
    } catch (Throwable ex) {
      logger.fatal(ex.getMessage(), ex);
      result.reject("unknown.validation.error");
    }
  }