package org.talend.esb.client.app.validation; import java.text.ParseException; import java.text.SimpleDateFormat; import javax.validation.ConstraintValidator; import javax.validation.ConstraintValidatorContext; public class DateFormatValidator implements ConstraintValidator<ValidDateFormat, String> { public static final String DEFAULT_FORMAT = "dd.MM.yyyy"; private String format; @Override public void initialize(ValidDateFormat constraintAnnotation) { format = constraintAnnotation.format(); } @Override public boolean isValid(String value, ConstraintValidatorContext context) { if (value == null || value.trim().isEmpty()) { return true; } SimpleDateFormat sdf = new SimpleDateFormat(format); sdf.setLenient(false); try { sdf.parse(value); return true; } catch (ParseException e) { return false; } } }