com.opensymphony.xwork2.validator.annotations
Annotation Type VisitorFieldValidator


@Target(value=METHOD)
@Retention(value=RUNTIME)
public @interface VisitorFieldValidator

The validator allows you to forward validator to object properties of your action using the objects own validator files. This allows you to use the ModelDriven development pattern and manage your validations for your models in one place, where they belong, next to your model classes. The VisitorFieldValidator can handle either simple Object properties, Collections of Objects, or Arrays. The error message for the VisitorFieldValidator will be appended in front of validator messages added by the validations for the Object message.

Annotation usage:

The annotation must be applied at method level.

Annotation parameters:

Parameter Required Default Notes
message yes   field error message
key no   i18n key from language specific properties file.
fieldName no    
shortCircuit no false If this validator should be used as shortCircuit.
type yes ValidatorType.FIELD Enum value from ValidatorType. Either FIELD or SIMPLE can be used here.
context no action alias Determines the context to use for validating the Object property. If not defined, the context of the Action validation is propogated to the Object property validation. In the case of Action validation, this context is the Action alias.
appendPrefix no true Determines whether the field name of this field validator should be prepended to the field name of the visited field to determine the full field name when an error occurs. For example, suppose that the bean being validated has a "name" property. If appendPrefix is true, then the field error will be stored under the field "bean.name". If appendPrefix is false, then the field error will be stored under the field "name".
If you are using the VisitorFieldValidator to validate the model from a ModelDriven Action, you should set appendPrefix to false unless you are using "model.name" to reference the properties on your model.

Example code:

 
 @VisitorFieldValidator(message = "Default message", key = "i18n.key", shortCircuit = true, context = "action alias", appendPrefix = true)
 
 

Version:
$Id: VisitorFieldValidator.java 1187 2006-11-13 08:05:32Z mrdon $
Author:
Rainer Hermanns

Required Element Summary
 String message
          The default error message for this validator.
 
Optional Element Summary
 boolean appendPrefix
          Determines whether the field name of this field validator should be prepended to the field name of the visited field to determine the full field name when an error occurs.
 String context
          Determines the context to use for validating the Object property.
 String fieldName
          The optional fieldName for SIMPLE validator types.
 String key
          The message key to lookup for i18n.
 boolean shortCircuit
          If this is activated, the validator will be used as short-circuit.
 

Element Detail

message

public abstract String message
The default error message for this validator.

context

public abstract String context
Determines the context to use for validating the Object property. If not defined, the context of the Action validator is propogated to the Object property validator. In the case of Action validator, this context is the Action alias.

Default:
""

appendPrefix

public abstract boolean appendPrefix
Determines whether the field name of this field validator should be prepended to the field name of the visited field to determine the full field name when an error occurs. For example, suppose that the bean being validated has a "name" property. If appendPrefix is true, then the field error will be stored under the field "bean.name". If appendPrefix is false, then the field error will be stored under the field "name". If you are using the VisitorFieldValidator to validate the model from a ModelDriven Action, you should set appendPrefix to false unless you are using "model.name" to reference the properties on your model.

Default:
true

key

public abstract String key
The message key to lookup for i18n.

Default:
""

fieldName

public abstract String fieldName
The optional fieldName for SIMPLE validator types.

Default:
""

shortCircuit

public abstract boolean shortCircuit
If this is activated, the validator will be used as short-circuit. Adds the short-circuit="true" attribute value if true.

Default:
false


Copyright © 2000-2008 Apache Software Foundation. All Rights Reserved.