org.apache.tapestry5.validator

## Class Required

- java.lang.Object
- - org.apache.tapestry5.validator.AbstractValidator<Void,Object>
  - - org.apache.tapestry5.validator.Required

- All Implemented Interfaces:
    Validator<Void,Object>

      public final class Required
      extends AbstractValidator<Void,Object>

  A validator that enforces that the value is not null and not the empty string. This validator is not configurable.

- - ### Field Summary

    - ### Fields inherited from class org.apache.tapestry5.validator.AbstractValidator

      `javaScriptSupport`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Required(JavaScriptSupport javaScriptSupport, Html5Support html5Support)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `isRequired()` The exception to the rule.
    `void` | `render(Field field, Void constraintValue, MessageFormatter formatter, MarkupWriter writer, FormSupport formSupport)` Hook used by components to allow the validator to contribute additional attributes or (more often) client-side JavaScript (via the `FormSupport.addValidation(Field, String, String, Object)`).
    `void` | `validate(Field field, Void constraintValue, MessageFormatter formatter, Object value)` Invoked after the client-submitted value has been `translated` to check that the value conforms to expectations (often, in terms of minimum or maximum value).

    - ### Methods inherited from class org.apache.tapestry5.validator.AbstractValidator

      `getConstraintType, getMessageKey, getValueType`

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

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

- - ### Constructor Detail

    - #### Required

          public Required(JavaScriptSupport javaScriptSupport,
                          Html5Support html5Support)

  - ### Method Detail

    - #### validate

          public void validate(Field field,
                               Void constraintValue,
                               MessageFormatter formatter,
                               Object value)
                        throws ValidationException

      Description copied from interface: `Validator`
      Invoked after the client-submitted value has been `translated` to check that the value conforms to expectations (often, in terms of minimum or maximum value). If and only if the value is approved by all Validators is the value applied by the field.
      Parameters:
        `field` - the field for which a client submitted value is being validated
        `constraintValue` - the value used to constrain
        `formatter` - Validation messages, in the appropriate locale
        `value` - the translated value supplied by the user
      Throws:
        `ValidationException` - if the value violates the constraint

    - #### isRequired

          public boolean isRequired()

      The exception to the rule.
      Specified by:
        `isRequired` in interface `Validator<Void,Object>`
      Overrides:
        `isRequired` in class `AbstractValidator<Void,Object>`

    - #### render

          public void render(Field field,
                             Void constraintValue,
                             MessageFormatter formatter,
                             MarkupWriter writer,
                             FormSupport formSupport)

      Description copied from interface: `Validator`
      Hook used by components to allow the validator to contribute additional attributes or (more often) client-side JavaScript (via the `FormSupport.addValidation(Field, String, String, Object)`).
      Parameters:
        `field` - the field which is currently being rendered
        `constraintValue` - the value used to constrain input
        `formatter` - validation message, in the appropriate locale
        `writer` - markup writer, allowing additional attributes to be written into the active element
        `formSupport` - used to add JavaScript

5.6.0 - Copyright © 2003-2020 The Apache Software Foundation.