Release History

VersionDateDescription
1.3.0 2006-03-24 see http://wiki.apache.org/jakarta-commons/ValidatorVersion130
1.2.0 2005-11-15 see http://wiki.apache.org/jakarta-commons/ValidatorVersion120
1.1.4 2004-11-12 Minor maintenance release.
1.1.3 2004-08-25
1.1.2 (alpha) 2004-04-03
1.1.1 (alpha) 2003-12-15
1.1.0 (alpha) 2003-08-26

Get the RSS feed of the last changes

Release 1.3.0 - 2006-03-24

TypeChangesBy
fix ValidatorResult only contains last run dependency for the field. Fixes 38678. Thanks to bart vandendriessche. niallp
fix Validator argument - resource="false" ignored for arg0 - arg3. Fixes 38798. Thanks to Rostislav Palivoda. niallp
fix Change JavaScript validators to cater for disabled being undefined (an issue in Netscape 4.7). Fixes 38581. Thanks to Yugandhar. niallp
add

Add new routines package containing standard validations - first step in the process of clearly separating standard validation functions which can be used independantly, from the framework aspect of Commons Validator.

New validators added for Date, Time, Calendar, Byte, Short, Integer, Long, Float, Double, BigInteger, BigDecimal, Currency and Percent.

See Routines Package JavaDocs

niallp
add Deprecate ValidatorResult's getActionMap() and add getActions() method to provide an Iterator of the set of action names. Fixes 37704. niallp
add Use the Dojo/Rhino JavaScript compressor to created compressed versions of the static JavaScript files. Additionally create single file distros of all the static JavaScript in un-compressed and compressed format. See Dojo/Rhino Compressor . Fixes 37580. Thanks to Michael Rush. niallp
fix Prefix remaining JavaScript utility methods with "jcv_" to reduce the likelihood of clashes with other libraries - validator still needs to be properly namespaced (as per Bug 38184). niallp
fix Change JavaScript validators so that they don't fail when the field is not present on the form. Fixes 14471. Thanks to Andrew Berridge and Paul Benedict . niallp
fix Fix min/max length validation for different line endings. Fixes 37962. Thanks to Alan Olmanson. niallp
fix Fix email validator to not allow spaces at the end of the user component or start of the domain component. Fixes 38051. Thanks to Stephanie Codron. niallp
add Added validator_1_3_0.dtd and changed form rules so that a minimum of one field is no longer required (i.e. changed (field+) to (field*) for a form). Fixes 37975. Thanks to Neale. niallp
fix Resolve issue in JavaScript validation when the prototype library is used. Fixes 37134. Thanks to Philippe Mouawad. niallp
fix Re-factor JavaScript error handling into a common method and only set focus on fields which are not 'hidden' type or hidden by CSS. Fixes 21043 and 32476 . Thanks to Matt Bathje and Paul Benedict . niallp
fix Remove static Log instances to avoid problems if deployed via a shared classloader in a container. See here for more details. niallp
fix Reverse change for to Credit Card Validator for visa card blue in France. Fixes 35926. niallp
fix Fix JavaScript validation for Internet Explorer 5.0. Fixes 38159. Thanks to Kristian L. Petersen. niallp

Release 1.2.0 - 2005-11-15

TypeChangesBy
add Added ISBNValidator for validating book numbers. Fixes 31489. dgraham
update Upgrade dependency versions to Commons BeanUtils 1.7.0, Commons Digester 1.6 and Commons Logging 1.0.4. Remove dependency on Commons Collections (BeanUtils 1.7.0 has removed its dependency on Collections by including the few Collections classes required in its distribution). dgraham
add Add support for min or max numeric values. Fixes 29015. husted
add Allow validators to register errors for multiple fields. Fixes 29151. husted
fix Fixed EmailValidator failing on valid email addresses. Fixes 23990. husted
add Allow forms to inherit validation rules from other forms. Fixes 27870. rleland
add Remove the need to specify an Arguement's position. Fixes 31194. niallp
add Deprecated all FastHashMap usage and provided protected get methods that return generic Maps to be used by subclasses. Fixes 29815. dgraham
fix Handling of float and double should use the locale object. Fixes 34198 and 21282 . mrdon
update More informative Exception message when validation method not found. Fixes 27471. mrdon
fix Client-side required validation inconsistent with server-side. Fixes 15912. mrdon
fix EmailValidator allows apostrophes in domain name. Fixes 29541. mrdon
fix Changing the strategy for locating form name/id, now use a common util ity function which works in both IE and Firefox. Fixes 35127 and 32760 . mrdon
fix Validation fails when "name" attribute in form not specified. Fixes 35294 and 31534 . mrdon
fix UrlValidator fails http://www.google.com. Fixes 30686. mrdon
fix Email: inexisting dashes and TLD erroneously accepted. Fixes 33409 and 31644 . mrdon
fix Float validator can't validate the string with several dot. Fixes 32351. mrdon
fix CreditValidator does not handle Visa correctly. Fixes 35926. mrdon
fix datePattern not supported by JavaScript. Fixes 22384. mrdon
fix validateRequired on a single radio button. Fixes 33047. mrdon
fix Field.validate() cannot be invoked from user-defined code. Fixes 35508. mrdon
fix Locale validation doesn't validate all fields. Fixes 30955 and 16920 . mrdon
fix XML file included into validation.xml via entity reference not found. Fixes 27258. mrdon
fix Update maven build to Include DTDs and xdocs in the source distribution. Fixes 31094. niallp
fix Remove logging of exceptions when the Date validation fails (correctly) with an invalid date. niallp
fix Add version 1.1.3 of the DTD from the VALIDATOR_1_1_2_BRANCH an d change digester rules so that the old arg0-arg3 values are not ignored for versions of the DTD prior to 1.2.0. niallp
add Add 'resource' and 'bundle' elements to the 1.2.0 DTD. Fixes 32522. niallp
add Provide access to the result object in ValidatorResult. Fixes 27671. niallp
fix Validation breaks on multiple validation.xml (eg. with Struts 1.3). Fixes 36899. niallp
fix GenericTypeValidator does not accept negative Floats/Doubles. Fixes 36878. niallp
fix correct UrlValidator JavaDoc. Fixes 37192. niallp
add Search the locale 'hierarchy' of formsets for a Form. Fixes 37310. niallp
fix Int validation in Java and Javascript have different semantics. Fixes 37300. niallp
fix Javascript Validation currently uses unsupported DOM method getAttributeNode(). Fixes 37315. niallp

Release 1.1.4 - 2004-11-12

TypeChangesBy
add Added getMessage(key) and getMessages() methods to Field Fixes 29452. niallp
add Added resource property (including getter/setter) to Msg to support the 'resource' attribute specified in the DTD. niallp

Release 1.1.3 - 2004-08-25

TypeChangesBy
fix Fixed javascript file reading in Java WebStart environment. Fixes 28257. dgraham
fix Fixed javascript email domain length limited to 2 or 3 chars. Fixes 29532. mrdon

Release 1.1.2 (alpha) - 2004-04-03

TypeChangesBy
fix Javascript validation doesn't work if a form field is called "name". Fixes 27899. rleland
update Allow multiple forms to be on the same page by generating a unique variable name based on form name. Fixes 17667. rleland
add Validate file extensions for file uploads. Fixes 26585. rleland
add Add Support for hidden fields in javascript validations. Fixes 26584. rleland
update The framework will convert checked exceptions into ValidatorExceptions so any ValidatorException thrown out of the framework indicates a 'system' exception that stops validation processing. If a pluggable validation method throws a ValidatorException it will be rethrown and passed out of the framework. Any other exception from a pluggable validation method is still considered a validation failure rather than a system exception to maintain backwards compatibility. Fixes 24369. dgraham
add Added a more flexible card validation system that doesn't require CreditCardValidator to support every brand of credit card. Fixes 25869. dgraham
update Throw RuntimeException if clone fails instead of InternalError. dgraham
add Added Flags.clear(). dgraham

Release 1.1.1 (alpha) - 2003-12-15

TypeChangesBy
add Add javadoc to javascript, and use jsdoc to process it. rleland
fix Ignore validation criteria when field is disabled for all field types. rleland
add Add required check for single checkbox. rleland
add Let max/min length also cover passwords fields. Don't use these for checking login pages, only when the user is modifying the password. rleland
add Added Field.getArgs(String) to make it easier to retrieve all of the Args for a given validator. dgraham
fix Modify javascript to honor datapattern option. rleland
add Add ability of required to handle checkboxes, radio, select-one, and select-multiple field types. rleland
add Add ability to use required condition on array types like checkboxes. rleland

Release 1.1.0 (alpha) - 2003-08-26

TypeChangesBy
update Move Digester rule configuration to XML file and remove ValidatorResourcesInitializer. ValidatorResources now knows how to initialize itself. dgraham
update Clean up scopes of methods and variables. dgraham
update Make Arg system more flexible to allow any number of args in a message. dgraham
update Validate validation.xml files while initializing a Validator to alert developers to configuration errors. dgraham
add Refactored GenericValidator methods i nto reusable objects. These include: CreditCardValidator, EmailValidator, DateValidator, and UrlValidator. dgraham
update

Backwards Incompatible Changes

  • < msg > 's name and key attributes are now required. The Validator code was enforcing this constraint so now it's formally defined in the DTD.
dgraham
remove

Deprecated items; see the javadoc for details and replacements.

  • The < arg0-3 > elements have been replaced with a single < arg > element with a new position attribute. Setting position to 0 is the equivalent of an < arg0 > element.
  • Arg.getResource()
  • CreditCardValidator.isValidPrefix()
  • Field.ARG_DEFAULT
  • Field.hDependencies
  • Field.hArg0 - Field.hArg3
  • Field.addArg0() - Field.addArg3()
  • Field.getArg0() - Field.getArg3()
  • Field.addVarParam()
  • Field.process()
  • Field.processMessageComponents()
  • Field.getDependencies()
  • Form.getFieldMap()
  • Form.process()
  • FormSet .addConstant()
  • FormSet.addConstantParam()
  • FormSet.getForm(Object)
  • FormSet.process()
  • GenericValidator.REGEXP_DELIM
  • GenericValidator.validateCreditCardLuhnCheck()
  • GenericValidator.validateCreditCardPrefixCheck()
  • GenericValidator.getDelimittedRegExp()
  • Validator.BEAN_KEY
  • Validator.VALIDATOR_ACTION_KEY
  • Validator.FIELD_KEY
  • Validator.VALIDATOR_KEY
  • Validator.LOCALE_KEY
  • Validator.hResources
  • Validator.addResource()
  • Validator.getResource()
  • ValidatorAction.process()
  • ValidatorAction.getDependencies()
  • ValidatorResources.put()
  • ValidatorResources.addConstant()
  • ValidatorResources.addConstantParam()
  • ValidatorResources.get()
  • ValidatorResources.processForms()
  • ValidatorResourcesInitializer
  • ValidatorResult.getValid()
  • ValidatorResults.empty()
  • ValidatorResults.get()
  • ValidatorResults.properties()
  • ValidatorUtil
dgraham