org.apache.commons.validator
Class Validator
java.lang.Object
org.apache.commons.validator.Validator
- Serializable
public class Validator
extends java.lang.Object
implements 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.
static String | BEAN_PARAM - Resources key the JavaBean is stored to perform validation on.
|
static String | FIELD_PARAM - Resources key the
Field is stored under.
|
static String | FORM_PARAM - Resources key the
Form is stored under.
|
static String | LOCALE_PARAM - Resources key the
Locale is stored.
|
static String | VALIDATOR_ACTION_PARAM - Resources key the
ValidatorAction is stored under.
|
static String | VALIDATOR_PARAM - Resources key the
Validator is stored under.
|
static String | VALIDATOR_RESULTS_PARAM - Resources key the
ValidatorResults is stored under.
|
protected ClassLoader | classLoader - The class loader to use for instantiating application objects.
|
protected String | fieldName - The name of the field on the form to validate
|
protected String | formName - The name of the form to validate
|
protected boolean | onlyReturnErrors - Set this to true to not return Fields that pass validation.
|
protected int | page - The current page number to validate.
|
protected Map | parameters - Maps validation method parameter class names to the objects to be passed
into the method.
|
protected ValidatorResources | resources - The Validator Resources.
|
protected boolean | useContextClassLoader - Whether or not to use the Context ClassLoader when loading classes
for instantiating new objects.
|
Validator(ValidatorResources resources) - Construct a
Validator that will
use the ValidatorResources
passed in to retrieve pluggable validators
the different sets of validation rules.
|
Validator(ValidatorResources resources, String formName) - Construct a
Validator that will
use the ValidatorResources
passed in to retrieve pluggable validators
the different sets of validation rules.
|
Validator(ValidatorResources resources, String formName, String fieldName) - Construct a
Validator that will
use the ValidatorResources
passed in to retrieve pluggable validators
the different sets of validation rules.
|
void | clear() - Clears the form name, resources that were added, and the page that was
set (if any).
|
ClassLoader | getClassLoader() - Return the class loader to be used for instantiating application objects
when required.
|
String | getFormName() - Gets the form name which is the key to a set of validation rules.
|
boolean | getOnlyReturnErrors() - Returns true if the Validator is only returning Fields that fail validation.
|
int | getPage() - Gets the page.
|
Object | getParameterValue(String parameterClassName) - Returns the value of the specified parameter that will be used during the
processing of validations.
|
boolean | getUseContextClassLoader() - Return the boolean as to whether the context classloader should be used.
|
void | setClassLoader(ClassLoader classLoader) - Set 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) - Set a parameter of a pluggable validation method.
|
void | setUseContextClassLoader(boolean use) - Determine whether to use the Context ClassLoader (the one found by
calling
Thread.currentThread().getContextClassLoader() )
to resolve/load classes that are defined in various rules.
|
ValidatorResults | validate() - Performs validations based on the configured resources.
|
BEAN_PARAM
public static final String BEAN_PARAM
Resources key the JavaBean is stored to perform validation on.
FIELD_PARAM
public static final String FIELD_PARAM
Resources key the Field
is stored under.
This will be automatically passed into a validation method
with the current Field
if it is
specified in the method signature.
FORM_PARAM
public static final String FORM_PARAM
Resources key the Form
is stored under.
This will be automatically passed into a validation method
with the current Form
if it is
specified in the method signature.
LOCALE_PARAM
public static final String LOCALE_PARAM
Resources key the Locale
is stored.
This will be used to retrieve the appropriate
FormSet
and Form
to be
processed.
VALIDATOR_ACTION_PARAM
public static final String VALIDATOR_ACTION_PARAM
Resources key the ValidatorAction
is stored under.
This will be automatically passed into a validation method
with the current ValidatorAction
if it is
specified in the method signature.
VALIDATOR_PARAM
public static final String VALIDATOR_PARAM
Resources key the Validator
is stored under.
This will be automatically passed into a validation method
with the current Validator
if it is
specified in the method signature.
VALIDATOR_RESULTS_PARAM
public static final String VALIDATOR_RESULTS_PARAM
Resources key the ValidatorResults
is stored under.
This will be automatically passed into a validation method
with the current ValidatorResults
if it is
specified in the method signature.
classLoader
protected ClassLoader 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 the
useContextClassLoader
variable.
fieldName
protected String fieldName
The name of the field on the form to validate
formName
protected String formName
The name of the form to validate
onlyReturnErrors
protected boolean onlyReturnErrors
Set this to true to not return Fields that pass validation. Only return failures.
page
protected int page
The current page number to validate.
parameters
protected Map parameters
Maps validation method parameter class names to the objects to be passed
into the method.
useContextClassLoader
protected boolean useContextClassLoader
Whether or not to use the Context ClassLoader when loading classes
for instantiating new objects. Default is false
.
Validator
public Validator(ValidatorResources resources)
Construct a Validator
that will
use the ValidatorResources
passed in to retrieve pluggable validators
the different sets of validation rules.
resources
- ValidatorResources
to use during validation.
Validator
public Validator(ValidatorResources resources,
String formName)
Construct a Validator
that will
use the ValidatorResources
passed in to retrieve pluggable validators
the different sets of validation rules.
resources
- ValidatorResources
to use during validation.formName
- Key used for retrieving the set of validation rules.
Validator
public Validator(ValidatorResources resources,
String formName,
String fieldName)
Construct a Validator
that will
use the ValidatorResources
passed in to retrieve pluggable validators
the different sets of validation rules.
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
clear
public void 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. The
ValidatorResources
will not be removed since it can be used
again and is thread safe.
getClassLoader
public ClassLoader getClassLoader()
Return 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.
getFormName
public String getFormName()
Gets the form name which is the key to a set of validation rules.
getOnlyReturnErrors
public boolean getOnlyReturnErrors()
Returns true if the Validator is only returning Fields that fail validation.
- whether only failed fields are returned.
getPage
public int 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.
getParameterValue
public Object getParameterValue(String parameterClassName)
Returns the value of the specified parameter that will be used during the
processing of validations.
parameterClassName
- The full class name of the parameter of the
validation method that corresponds to the value/instance passed in with it.
- value of the specified parameter.
getUseContextClassLoader
public boolean getUseContextClassLoader()
Return the boolean as to whether the context classloader should be used.
- whether the context classloader should be used.
setClassLoader
public void setClassLoader(ClassLoader classLoader)
Set the class loader to be used for instantiating application objects
when required.
classLoader
- The new class loader to use, or null
to revert to the standard rules
setFieldName
public void setFieldName(String fieldName)
Sets the name of the field to validate in a form (optional)
fieldName
- The name of the field in a form set
setFormName
public void setFormName(String formName)
Sets the form name which is the key to a set of validation rules.
formName
- the name of the form.
setOnlyReturnErrors
public void setOnlyReturnErrors(boolean onlyReturnErrors)
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.
onlyReturnErrors
- whether only failed fields are returned.
setPage
public void setPage(int page)
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.
setParameter
public void setParameter(String parameterClassName,
Object parameterValue)
Set a parameter of a pluggable validation method.
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
public void setUseContextClassLoader(boolean use)
Determine whether to use the Context ClassLoader (the one found by
calling Thread.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.
use
- determines whether to use Context ClassLoader.
validate
public ValidatorResults validate()
throws ValidatorException
Performs validations based on the configured resources.
- The
Map
returned uses the property of the
Field
for the key and the value is the number of error the
field had.
Copyright (c) 2001-2004 Apache Software Foundation