Java Validation Framework (not a JSR-303 implementation).
This framework allows to modify (correct) test values;
supports validation of localized values;
allows to convert values into and from text representation;
formats error messages, depending on the context;
supports metadata, which allows to check any entity types (not only Java Beans or POJOs) and more.
Also this framework has long list of predefined validation components.