org.springframework.validation

## Class ValidationUtils

- java.lang.Object
- - org.springframework.validation.ValidationUtils

-     public abstract class ValidationUtils
      extends Object

  Utility class offering convenient methods for invoking a `Validator` and for rejecting empty fields.

  Checks for an empty field in `Validator` implementations can become one-liners when using `rejectIfEmpty(org.springframework.validation.Errors, java.lang.String, java.lang.String)` or `rejectIfEmptyOrWhitespace(org.springframework.validation.Errors, java.lang.String, java.lang.String)`.

  Since:
    06.05.2003
  Author:
    Juergen Hoeller, Dmitriy Kopylenko
  See Also:
    `Validator`, `Errors`

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `ValidationUtils()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static void` | `invokeValidator(Validator validator, Object target, Errors errors)` Invoke the given `Validator` for the supplied object and `Errors` instance.
    `static void` | `invokeValidator(Validator validator, Object target, Errors errors, Object... validationHints)` Invoke the given `Validator`/`SmartValidator` for the supplied object and `Errors` instance.
    `static void` | `rejectIfEmpty(Errors errors, String field, String errorCode)` Reject the given field with the given error code if the value is empty.
    `static void` | `rejectIfEmpty(Errors errors, String field, String errorCode, Object[] errorArgs)` Reject the given field with the given error code and error arguments if the value is empty.
    `static void` | `rejectIfEmpty(Errors errors, String field, String errorCode, Object[] errorArgs, String defaultMessage)` Reject the given field with the given error code, error arguments and default message if the value is empty.
    `static void` | `rejectIfEmpty(Errors errors, String field, String errorCode, String defaultMessage)` Reject the given field with the given error code and default message if the value is empty.
    `static void` | `rejectIfEmptyOrWhitespace(Errors errors, String field, String errorCode)` Reject the given field with the given error code if the value is empty or just contains whitespace.
    `static void` | `rejectIfEmptyOrWhitespace(Errors errors, String field, String errorCode, Object[] errorArgs)` Reject the given field with the given error code and error arguments if the value is empty or just contains whitespace.
    `static void` | `rejectIfEmptyOrWhitespace(Errors errors, String field, String errorCode, Object[] errorArgs, String defaultMessage)` Reject the given field with the given error code, error arguments and default message if the value is empty or just contains whitespace.
    `static void` | `rejectIfEmptyOrWhitespace(Errors errors, String field, String errorCode, String defaultMessage)` Reject the given field with the given error code and default message if the value is empty or just contains whitespace.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### ValidationUtils

          public ValidationUtils()

  - ### Method Detail

    - #### invokeValidator

          public static void invokeValidator(Validator validator,
                                             Object target,
                                             Errors errors)

      Invoke the given `Validator` for the supplied object and `Errors` instance.
      Parameters:
        `validator` - the `Validator` to be invoked
        `target` - the object to bind the parameters to
        `errors` - the `Errors` instance that should store the errors
      Throws:
        `IllegalArgumentException` - if either of the `Validator` or `Errors` arguments is `null`, or if the supplied `Validator` does not `support` the validation of the supplied object's type

    - #### invokeValidator

          public static void invokeValidator(Validator validator,
                                             Object target,
                                             Errors errors,
                                             @Nullable
                                             Object... validationHints)

      Invoke the given `Validator`/`SmartValidator` for the supplied object and `Errors` instance.
      Parameters:
        `validator` - the `Validator` to be invoked
        `target` - the object to bind the parameters to
        `errors` - the `Errors` instance that should store the errors
        `validationHints` - one or more hint objects to be passed to the validation engine
      Throws:
        `IllegalArgumentException` - if either of the `Validator` or `Errors` arguments is `null`, or if the supplied `Validator` does not `support` the validation of the supplied object's type

    - #### rejectIfEmpty

          public static void rejectIfEmpty(Errors errors,
                                           String field,
                                           String errorCode)

      Reject the given field with the given error code if the value is empty.

      An 'empty' value in this context means either `null` or the empty string "".

      The object whose field is being validated does not need to be passed in because the `Errors` instance can resolve field values by itself (it will usually hold an internal reference to the target object).

      Parameters:
        `errors` - the `Errors` instance to register errors on
        `field` - the field name to check
        `errorCode` - the error code, interpretable as message key

    - #### rejectIfEmpty

          public static void rejectIfEmpty(Errors errors,
                                           String field,
                                           String errorCode,
                                           String defaultMessage)

      Reject the given field with the given error code and default message if the value is empty.

      An 'empty' value in this context means either `null` or the empty string "".

      The object whose field is being validated does not need to be passed in because the `Errors` instance can resolve field values by itself (it will usually hold an internal reference to the target object).

      Parameters:
        `errors` - the `Errors` instance to register errors on
        `field` - the field name to check
        `errorCode` - error code, interpretable as message key
        `defaultMessage` - fallback default message

    - #### rejectIfEmpty

          public static void rejectIfEmpty(Errors errors,
                                           String field,
                                           String errorCode,
                                           Object[] errorArgs)

      Reject the given field with the given error code and error arguments if the value is empty.

      An 'empty' value in this context means either `null` or the empty string "".

      The object whose field is being validated does not need to be passed in because the `Errors` instance can resolve field values by itself (it will usually hold an internal reference to the target object).

      Parameters:
        `errors` - the `Errors` instance to register errors on
        `field` - the field name to check
        `errorCode` - the error code, interpretable as message key
        `errorArgs` - the error arguments, for argument binding via MessageFormat (can be `null`)

    - #### rejectIfEmpty

          public static void rejectIfEmpty(Errors errors,
                                           String field,
                                           String errorCode,
                                           @Nullable
                                           Object[] errorArgs,
                                           @Nullable
                                           String defaultMessage)

      Reject the given field with the given error code, error arguments and default message if the value is empty.

      An 'empty' value in this context means either `null` or the empty string "".

      The object whose field is being validated does not need to be passed in because the `Errors` instance can resolve field values by itself (it will usually hold an internal reference to the target object).

      Parameters:
        `errors` - the `Errors` instance to register errors on
        `field` - the field name to check
        `errorCode` - the error code, interpretable as message key
        `errorArgs` - the error arguments, for argument binding via MessageFormat (can be `null`)
        `defaultMessage` - fallback default message

    - #### rejectIfEmptyOrWhitespace

          public static void rejectIfEmptyOrWhitespace(Errors errors,
                                                       String field,
                                                       String errorCode)

      Reject the given field with the given error code if the value is empty or just contains whitespace.

      An 'empty' value in this context means either `null`, the empty string "", or consisting wholly of whitespace.

      The object whose field is being validated does not need to be passed in because the `Errors` instance can resolve field values by itself (it will usually hold an internal reference to the target object).

      Parameters:
        `errors` - the `Errors` instance to register errors on
        `field` - the field name to check
        `errorCode` - the error code, interpretable as message key

    - #### rejectIfEmptyOrWhitespace

          public static void rejectIfEmptyOrWhitespace(Errors errors,
                                                       String field,
                                                       String errorCode,
                                                       String defaultMessage)

      Reject the given field with the given error code and default message if the value is empty or just contains whitespace.

      An 'empty' value in this context means either `null`, the empty string "", or consisting wholly of whitespace.

      The object whose field is being validated does not need to be passed in because the `Errors` instance can resolve field values by itself (it will usually hold an internal reference to the target object).

      Parameters:
        `errors` - the `Errors` instance to register errors on
        `field` - the field name to check
        `errorCode` - the error code, interpretable as message key
        `defaultMessage` - fallback default message

    - #### rejectIfEmptyOrWhitespace

          public static void rejectIfEmptyOrWhitespace(Errors errors,
                                                       String field,
                                                       String errorCode,
                                                       @Nullable
                                                       Object[] errorArgs)

      Reject the given field with the given error code and error arguments if the value is empty or just contains whitespace.

      An 'empty' value in this context means either `null`, the empty string "", or consisting wholly of whitespace.

      The object whose field is being validated does not need to be passed in because the `Errors` instance can resolve field values by itself (it will usually hold an internal reference to the target object).

      Parameters:
        `errors` - the `Errors` instance to register errors on
        `field` - the field name to check
        `errorCode` - the error code, interpretable as message key
        `errorArgs` - the error arguments, for argument binding via MessageFormat (can be `null`)

    - #### rejectIfEmptyOrWhitespace

          public static void rejectIfEmptyOrWhitespace(Errors errors,
                                                       String field,
                                                       String errorCode,
                                                       @Nullable
                                                       Object[] errorArgs,
                                                       @Nullable
                                                       String defaultMessage)

      Reject the given field with the given error code, error arguments and default message if the value is empty or just contains whitespace.

      An 'empty' value in this context means either `null`, the empty string "", or consisting wholly of whitespace.

      The object whose field is being validated does not need to be passed in because the `Errors` instance can resolve field values by itself (it will usually hold an internal reference to the target object).

      Parameters:
        `errors` - the `Errors` instance to register errors on
        `field` - the field name to check
        `errorCode` - the error code, interpretable as message key
        `errorArgs` - the error arguments, for argument binding via MessageFormat (can be `null`)
        `defaultMessage` - fallback default message