Bean Message de Validation avec le paramètre dynamique

Je suis arriver a commencé avec bean validation, et je suis en train de composer une contrainte. Ma contrainte est de valider un CPF(document personnel au Brésil). Ma contrainte est au travail, mais j'ai besoin que le message contient un paramètre dynamique.

Je suis en utilisant ValidationMessages.les propriétés. Mon code:

@Constraint(validatedBy=CpfValidator.class)
@Size(min=11, max=14)
@Documented
@Target({ElementType.FIELD,ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface Cpf {

    String message() default "{cpf.validation.message}";
    Class<?>[] groups() default {};
    Class<? extends Payload>[] payload() default {};

}

Mon ValidationMessages.propriétés:

cpf.validation.message=Cpf {cpf} é inválido

Mon Validateur: je suis à l'aide d'un contexte.buildConstraintViolationWithTemplate à customiza mon message.

@Override
public boolean isValid(String value, ConstraintValidatorContext context) {

    String cpf = value;

    boolean result = ValidationUtil.validaCpf(cpf);
    if (result) {
        return true;
    }

    context.disableDefaultConstraintViolation();
    context.buildConstraintViolationWithTemplate("pf.validation.message}")
           .addConstraintViolation();
    return false;

}

Comment puis-je passer à la méthode de la valeur(cpf) par le paramètre lorsque le message est créé?

OriginalL'auteur Henrique Droog | 2014-01-31