All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.opensymphony.xwork2.validator.annotations.Validations Maven / Gradle / Ivy

Go to download

XWork is an command-pattern framework that is used to power WebWork as well as other applications. XWork provides an Inversion of Control container, a powerful expression language, data type conversion, validation, and pluggable configuration.

There is a newer version: 2.1.3
Show newest version
/*
 * Copyright (c) 2002-2006 by OpenSymphony
 * All rights reserved.
 */

package com.opensymphony.xwork2.validator.annotations;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 
 * 

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

* * *

Annotation usage: * * *

Used at METHOD level. * * *

Annotation 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
requiredStrings no Add list of RequiredStringValidators
stringLengthFields no Add list of StringLengthFieldValidators
urls no Add list of UrlValidators
visitorFields no Add list of VisitorFieldValidators
regexFields no Add list of RegexFieldValidator
expressions no Add list of ExpressionValidator
* * *

Example code: * *

 * 
 * @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;
 *   }
 * 
 * 
* * @author jepjep * @author Rainer Hermanns * @version $Id: Validations.java 1833 2008-06-21 09:29:39Z rainerh $ */ @Target( { ElementType.METHOD, ElementType.TYPE }) @Retention(RetentionPolicy.RUNTIME) public @interface Validations { /** * Custom Validation rules. */ public CustomValidator[] customValidators() default {}; public ConversionErrorFieldValidator[] conversionErrorFields() default {}; public DateRangeFieldValidator[] dateRangeFields() default {}; public EmailValidator[] emails() default {}; public FieldExpressionValidator[] fieldExpressions() default {}; public IntRangeFieldValidator[] intRangeFields() default {}; public RequiredFieldValidator[] requiredFields() default {}; public RequiredStringValidator[] requiredStrings() default {}; public StringLengthFieldValidator[] stringLengthFields() default {}; public UrlValidator[] urls() default {}; public ConditionalVisitorFieldValidator[] conditionalVisitorFields() default {}; public VisitorFieldValidator[] visitorFields() default {}; public RegexFieldValidator[] regexFields() default {}; public ExpressionValidator[] expressions() default {}; }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy