Example #1
0
  /**
   * 验证(或重新验证)当前的字段值。
   *
   * <p>注意,此方法将设置<code>isValidated()</code>为<code>true</code>。
   */
  public void validate() {
    valid = true;
    validated = true;

    for (Field field : getFields()) {
      ((FieldImpl) field).validate();
    }
  }
Example #2
0
  /**
   * 初始化group。 其中, <code>request</code>可以是<code>null</code>,如果 <code>request</code>不为<code>null
   * </code>,则同时验证表单。
   */
  public void init(HttpServletRequest request) {
    fields.clear();
    valid = true;
    validated = request != null;

    for (FieldConfig fieldConfig : getGroupConfig().getFieldConfigList()) {
      Field field = new FieldImpl(fieldConfig, this);

      fields.put(StringUtil.toLowerCase(fieldConfig.getName()), field);
      field.init(request);
    }

    // 集中验证表单字段(有些validator需要读取多个字段的值,这样做是为了避免这些validator读不到在其后定义的field的值)
    if (request != null) {
      for (Field field : fields.values()) {
        ((FieldImpl) field).validate();
      }
    }
  }