2013/1/21 Emmanuel Bernard <emmanuel@hibernate.org>
My concern around the latest option is that it forces us to be a
subclass of ConstraintViolation for the foreseeable future including
when we reopen the type-safe options we explored in

If we want to include a type-safe approach later on, we might do it like this:

* Pull ConstraintValidator#initialize() up into a new interface Initializeable
* Change @CrossParameterConstraint#validatedBy() to return Class<? extends Initializable<?, ?>>. AFAICS that shouldn't be a problem for existing constraint definitions, BV providers need of course to adapt. Short tests I did looked good.