Apache Commons logo Commons Validator

Commons Validator

A common issue when receiving data either electronically or from user input is verifying the integrity of the data. This work is repetitive and becomes even more complicated when different sets of validation rules need to be applied to the same set of data based on locale. Error messages may also vary by locale. This package addresses some of these issues to speed development and maintenance of validation rules.


See the Downloads page for current/previous releases. For details of whats new in each version see the Release Notes. Community Notes on release are maintained on the Apache Commons Wiki.



Validator provides two distinct sets of functionality:

  1. A configurable (typically XML) validation engine
  2. Reusable "primitive" validation methods

Your validation methods are plugged into the engine and executed against your data. Often, these methods use resources specific to one application or framework so Commons Validator doesn't directly provide pluggable validator actions. However, it does have a set of common validation methods (email addresses, dates, URLs, etc.) that help in creating pluggable actions.


In order to use the Validator, the following basic steps are required:

  • Create a new instance of the org.apache.commons.validator.Validator class. Currently Validator instances may be safely reused if the current ValidatorResources are the same, as long as you have completed any previous validation, and you do not try to utilize a particular Validator instance from more than one thread at a time.
  • Add any resources needed to perform the validations, such as the JavaBean to validate.
  • Call the validate method on org.apache.commons.validator.Validator.


The package Javadoc has useful information:

See the subversion repository for the latest source code.


The commons mailing lists act as the main support forum. The user list is suitable for most library usage queries. The dev list is intended for the development discussion. Please remember that the lists are shared between all commons components, so prefix your email by [validator].

Issues may be reported via ASF JIRA.