Apache Struts 2 Documentation > Home > Guides > Core Developers Guide > Annotations > Validations Annotation |

Apache Struts 2 Documentation
Validations Annotation
Edit Page Browse Space Add Page Add News
Added by Rainer Hermanns, last edited by Don Brown on Nov 14, 2006 (view change)

If you want to use several annotations of the same type, these annotation must be nested within the @Validations() annotation.

## Usage

Used at METHOD level.

## Parameters

Parameter | Required | Notes
--- | --- | ---
requiredFields | no

| Add list of RequiredFieldValidators

customValidators | no | Add list of CustomValidators
conversionErrorFields

| no | Add list of ConversionErrorFieldValidators

dateRangeFields | no | Add list of DateRangeFieldValidators
emails | no | Add list of EmailValidators
fieldExpressions | no | Add list of FieldExpressionValidators
intRangeFields | no | Add list of IntRangeFieldValidators
requiredFields | no | Add list of RequiredFieldValidators
requiredStrings | no | Add list of RequiredStringValidators
stringLengthFields | no | Add list of StringLengthFieldValidators
urls | no | Add list of UrlValidators
visitorFields | no | Add list of VisitorFieldValidators
stringRegexs

| no | Add list of StringRegexValidator

regexFields | no | Add list of RegexFieldValidator
expressions | no | Add list of ExpressionValidator

## Examples

    @Validations(
              requiredFields =
                      {@RequiredFieldValidator(type = ValidatorType.SIMPLE, fieldName = "customfield", message = "You must enter a value for field.")},
              requiredStrings =
                      {@RequiredStringValidator(type = ValidatorType.SIMPLE, fieldName = "stringisrequired", message = "You must enter a value for string.")},
              emails =
                      { @EmailValidator(type = ValidatorType.SIMPLE, fieldName = "emailaddress", message = "You must enter a value for email.")},
              urls =
                      { @UrlValidator(type = ValidatorType.SIMPLE, fieldName = "hreflocation", message = "You must enter a value for email.")},
              stringLengthFields =
                      {@StringLengthFieldValidator(type = ValidatorType.SIMPLE, trim = true, minLength="10" , maxLength = "12", fieldName = "needstringlength", message = "You must enter a stringlength.")},
              intRangeFields =
                      { @IntRangeFieldValidator(type = ValidatorType.SIMPLE, fieldName = "intfield", min = "6", max = "10", message = "bar must be between ${min} and ${max}, current value is ${bar}.")},
              dateRangeFields =
                      {@DateRangeFieldValidator(type = ValidatorType.SIMPLE, fieldName = "datefield", min = "-1", max = "99", message = "bar must be between ${min} and ${max}, current value is ${bar}.")},
              expressions = {
                  @ExpressionValidator(expression = "foo > 1", message = "Foo must be greater than Bar 1. Foo = ${foo}, Bar = ${bar}."),
                  @ExpressionValidator(expression = "foo > 2", message = "Foo must be greater than Bar 2. Foo = ${foo}, Bar = ${bar}."),
                  @ExpressionValidator(expression = "foo > 3", message = "Foo must be greater than Bar 3. Foo = ${foo}, Bar = ${bar}."),
                  @ExpressionValidator(expression = "foo > 4", message = "Foo must be greater than Bar 4. Foo = ${foo}, Bar = ${bar}."),
                  @ExpressionValidator(expression = "foo > 5", message = "Foo must be greater than Bar 5. Foo = ${foo}, Bar = ${bar}.")
      }
      )
      public String execute() throws Exception {
          return SUCCESS;
      }