Versions

The current version is r3 (r4 will be available soon - so you are save with using the current snapshot).

JSF-Versions

ExtVal release numbers are directly linked to the JSF version they're compatible with.

  • ExtVal 1.1.x is compatible with JSF 1.1.x
  • ExtVal 1.2.x is compatible with JSF 1.2.x
  • ExtVal 2.0.x is compatible with JSF 2.0.x

Migration guide

Please write to the dev list if you face any issue.

Migration to ExtVal x.x.3

MyFaces ExtVal r3 is a major version of ExtVal.

Using ExtVal r3 in existing Applications

Simple Usage

@Length and @Pattern won't validate empty values any more. That means previous versions of ExtVal perform an implicit required validation in some cases. With ExtVal r3 you don't see these implicit validations any more.
If you are fine with these implicit validations, you have several possibilities to get back to the original behavior:

  • Provide a custom validation strategy for these constraints and annotate them with @EmptyValueAwareValidationStrategy.
  • Use the approach described by Rudy in EXTVAL-82

Custom Validation Strategies

Fixed typo - see AbstractAnnotationValidationStrategy#getValidationErrorFacesMessage

Cross-Validation

  • CrossValidationStorageEntry moved to the package org.apache.myfaces.extensions.validator.crossval.storage
    The behavior is the same - so you just have to fix the import statements.

ExtVal Add-ons

If an add-on extends a class which isn't marked as UsageCategory.API, it's possible that there are some changes. e.g. ValidationInterceptorWithSkipValidationSupport was renamed to: PropertyValidationModuleValidationInterceptor

  • No labels