In this section, we will demonstrate how to create a custom CreditCard
validator @CreditCard
using the Bean Validation API, and show how to extend the PrimeFaces CSV framework to work with the custom Bean Validation annotation @CreditCard
, by performing the following steps:
Create a custom Bean Validation annotation
@CreditCard
:@Target({METHOD,FIELD,ANNOTATION_TYPE}) @Retention(RUNTIME) @Constraint(validatedBy=CreditCardConstraintValidator.class) @ClientConstraint(resolvedBy=CreditCardClientValidationConstraint.class) @Documented public @interface CreditCard { String message() default "{com.packtpub.techbuzz.validation.creditcard.invalid}"; Class<?>[] groups() default {}; Class<? extends Payload>[] payload() default {}; }
Implement the
CreditCardConstraintValidator
class by implementingConstraintValidator<CreditCard, String>
:public class CreditCardConstraintValidator...