Package org.apache.commons.validator
Class Validator
java.lang.Object
org.apache.commons.validator.Validator
- All Implemented Interfaces:
Serializable
Validations are processed by the validate method. An instance of
ValidatorResources
is used to define the validators
(validation methods) and the validation rules for a JavaBean.- See Also:
-
Field Summary
Modifier and TypeFieldDescriptionstatic final String
Resources key the JavaBean is stored to perform validation on.protected ClassLoader
The class loader to use for instantiating application objects.static final String
Resources key theField
is stored under.protected String
The name of the field on the form to validatestatic final String
Resources key theForm
is stored under.protected String
The name of the form to validatestatic final String
Resources key theLocale
is stored.protected boolean
Sets this to true to not return Fields that pass validation.protected int
The current page number to validate.Maps validation method parameter class names to the objects to be passed into the method.protected ValidatorResources
The Validator Resources.protected boolean
Whether or not to use the Context ClassLoader when loading classes for instantiating new objects.static final String
Resources key theValidatorAction
is stored under.static final String
Resources key theValidator
is stored under.static final String
Resources key theValidatorResults
is stored under. -
Constructor Summary
ConstructorDescriptionValidator
(ValidatorResources resources) Constructs aValidator
that will use theValidatorResources
passed in to retrieve pluggable validators the different sets of validation rules.Validator
(ValidatorResources resources, String formName) Constructs aValidator
that will use theValidatorResources
passed in to retrieve pluggable validators the different sets of validation rules.Validator
(ValidatorResources resources, String formName, String fieldName) Constructs aValidator
that will use theValidatorResources
passed in to retrieve pluggable validators the different sets of validation rules. -
Method Summary
Modifier and TypeMethodDescriptionvoid
clear()
Clears the form name, resources that were added, and the page that was set (if any).Gets the class loader to be used for instantiating application objects when required.Gets the form name which is the key to a set of validation rules.boolean
Returns true if the Validator is only returning Fields that fail validation.int
getPage()
Gets the page.getParameterValue
(String parameterClassName) Returns the value of the specified parameter that will be used during the processing of validations.boolean
Gets the boolean as to whether the context classloader should be used.void
setClassLoader
(ClassLoader classLoader) Sets the class loader to be used for instantiating application objects when required.void
setFieldName
(String fieldName) Sets the name of the field to validate in a form (optional)void
setFormName
(String formName) Sets the form name which is the key to a set of validation rules.void
setOnlyReturnErrors
(boolean onlyReturnErrors) Configures which Fields the Validator returns from the validate() method.void
setPage
(int page) Sets the page.void
setParameter
(String parameterClassName, Object parameterValue) Sets a parameter of a pluggable validation method.void
setUseContextClassLoader
(boolean use) Determine whether to use the Context ClassLoader (the one found by callingThread.currentThread().getContextClassLoader()
) to resolve/load classes that are defined in various rules.validate()
Performs validations based on the configured resources.
-
Field Details
-
BEAN_PARAM
Resources key the JavaBean is stored to perform validation on.- See Also:
-
VALIDATOR_ACTION_PARAM
Resources key theValidatorAction
is stored under. This will be automatically passed into a validation method with the currentValidatorAction
if it is specified in the method signature.- See Also:
-
VALIDATOR_RESULTS_PARAM
Resources key theValidatorResults
is stored under. This will be automatically passed into a validation method with the currentValidatorResults
if it is specified in the method signature.- See Also:
-
FORM_PARAM
Resources key theForm
is stored under. This will be automatically passed into a validation method with the currentForm
if it is specified in the method signature.- See Also:
-
FIELD_PARAM
Resources key theField
is stored under. This will be automatically passed into a validation method with the currentField
if it is specified in the method signature.- See Also:
-
VALIDATOR_PARAM
Resources key theValidator
is stored under. This will be automatically passed into a validation method with the currentValidator
if it is specified in the method signature.- See Also:
-
LOCALE_PARAM
Resources key theLocale
is stored. This will be used to retrieve the appropriateFormSet
andForm
to be processed.- See Also:
-
resources
The Validator Resources. -
formName
The name of the form to validate -
fieldName
The name of the field on the form to validate- Since:
- 1.2.0
-
parameters
Maps validation method parameter class names to the objects to be passed into the method. -
page
The current page number to validate. -
classLoader
The class loader to use for instantiating application objects. If not specified, the context class loader, or the class loader used to load Digester itself, is used, based on the value of theuseContextClassLoader
variable. -
useContextClassLoader
Whether or not to use the Context ClassLoader when loading classes for instantiating new objects. Default isfalse
. -
onlyReturnErrors
Sets this to true to not return Fields that pass validation. Only return failures.
-
-
Constructor Details
-
Validator
Constructs aValidator
that will use theValidatorResources
passed in to retrieve pluggable validators the different sets of validation rules.- Parameters:
resources
-ValidatorResources
to use during validation.
-
Validator
Constructs aValidator
that will use theValidatorResources
passed in to retrieve pluggable validators the different sets of validation rules.- Parameters:
resources
-ValidatorResources
to use during validation.formName
- Key used for retrieving the set of validation rules.
-
Validator
Constructs aValidator
that will use theValidatorResources
passed in to retrieve pluggable validators the different sets of validation rules.- Parameters:
resources
-ValidatorResources
to use during validation.formName
- Key used for retrieving the set of validation rules.fieldName
- Key used for retrieving the set of validation rules for a field- Since:
- 1.2.0
-
-
Method Details
-
clear
Clears the form name, resources that were added, and the page that was set (if any). This can be called to reinitialize the Validator instance so it can be reused. The form name (key to set of validation rules) and any resources needed, like the JavaBean being validated, will need to set and/or added to this instance again. TheValidatorResources
will not be removed since it can be used again and is thread safe. -
getClassLoader
Gets the class loader to be used for instantiating application objects when required. This is determined based upon the following rules:- The class loader set by
setClassLoader()
, if any - The thread context class loader, if it exists and the
useContextClassLoader
property is set to true - The class loader used to load the Digester class itself.
- Returns:
- the class loader.
- The class loader set by
-
getFormName
Gets the form name which is the key to a set of validation rules.- Returns:
- the name of the form.
-
getOnlyReturnErrors
Returns true if the Validator is only returning Fields that fail validation.- Returns:
- whether only failed fields are returned.
-
getPage
Gets the page.This in conjunction with the page property of a
Field
can control the processing of fields. If the field's page is less than or equal to this page value, it will be processed.- Returns:
- the page number.
-
getParameterValue
Returns the value of the specified parameter that will be used during the processing of validations.- Parameters:
parameterClassName
- The full class name of the parameter of the validation method that corresponds to the value/instance passed in with it.- Returns:
- value of the specified parameter.
-
getUseContextClassLoader
Gets the boolean as to whether the context classloader should be used.- Returns:
- whether the context classloader should be used.
-
setClassLoader
Sets the class loader to be used for instantiating application objects when required.- Parameters:
classLoader
- The new class loader to use, ornull
to revert to the standard rules
-
setFieldName
Sets the name of the field to validate in a form (optional)- Parameters:
fieldName
- The name of the field in a form set- Since:
- 1.2.0
-
setFormName
Sets the form name which is the key to a set of validation rules.- Parameters:
formName
- the name of the form.
-
setOnlyReturnErrors
Configures which Fields the Validator returns from the validate() method. Set this to true to only return Fields that failed validation. By default, validate() returns all fields.- Parameters:
onlyReturnErrors
- whether only failed fields are returned.
-
setPage
Sets the page.This in conjunction with the page property of a
Field
can control the processing of fields. If the field's page is less than or equal to this page value, it will be processed.- Parameters:
page
- the page number.
-
setParameter
Sets a parameter of a pluggable validation method.- Parameters:
parameterClassName
- The full class name of the parameter of the validation method that corresponds to the value/instance passed in with it.parameterValue
- The instance that will be passed into the validation method.
-
setUseContextClassLoader
Determine whether to use the Context ClassLoader (the one found by callingThread.currentThread().getContextClassLoader()
) to resolve/load classes that are defined in various rules. If not using Context ClassLoader, then the class-loading defaults to using the calling-class' ClassLoader.- Parameters:
use
- determines whether to use Context ClassLoader.
-
validate
Performs validations based on the configured resources.- Returns:
- The
Map
returned uses the property of theField
for the key and the value is the number of error the field had. - Throws:
ValidatorException
- If an error occurs during validation
-