code: @Override
      public boolean isValid(String value, ConstraintValidatorContext context) {
          List<String> emailAddresses = EmailAddressesParser.parse(value);
          List<String> badAddresses = null;
          for (String ea : emailAddresses) {
              if (!EMAIL_VALIDATOR.isValid(ea, null)) {
                  if (badAddresses == null) {
                      badAddresses = new LinkedList<String>();
                  }
  
                  badAddresses.add(ea);
              }
          }
  
          if (badAddresses != null) {
              context.disableDefaultConstraintViolation();
              context.buildConstraintViolationWithTemplate(MessageFormat.format(constraintAnnotation.message(),
                                                                                StringUtils.join(badAddresses, ", ")))
                     .addConstraintViolation();
          }
          return (badAddresses == null);
      }
docs: /*
  (non-Javadoc)
  
  @see javax.validation.ConstraintValidator#isValid(java.lang.Object,
  javax.validation.ConstraintValidatorContext)