branch develop updated (d56f3c5c -> a8965741)
This is an automated email from the git hooks/post-receive script. New change to branch develop in repository faxtomail. See https://gitlab.nuiton.org/codelutin/faxtomail.git from d56f3c5c Use proper jaxx version (no mixup possible anymore) new a8965741 Fix email validation with long TLD (for example *.consulting) The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Detailed log of new commits: commit a896574166442fbe48bccab26eea34c75a087e34 Author: jcouteau <couteau@codelutin.com> Date: Mon Nov 22 12:32:56 2021 +0100 Fix email validation with long TLD (for example *.consulting) Summary of changes: .../validators/FaxToMailEmailsValidator.java | 47 +++++++++++++++++----- .../src/main/resources/validators.xml | 2 +- pom.xml | 2 +- 3 files changed, 38 insertions(+), 13 deletions(-) -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository faxtomail. See https://gitlab.nuiton.org/codelutin/faxtomail.git commit a896574166442fbe48bccab26eea34c75a087e34 Author: jcouteau <couteau@codelutin.com> Date: Mon Nov 22 12:32:56 2021 +0100 Fix email validation with long TLD (for example *.consulting) --- .../validators/FaxToMailEmailsValidator.java | 47 +++++++++++++++++----- .../src/main/resources/validators.xml | 2 +- pom.xml | 2 +- 3 files changed, 38 insertions(+), 13 deletions(-) diff --git a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/validators/FaxToMailEmailsValidator.java b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/validators/FaxToMailEmailsValidator.java index 3608d86a..8f3c1f64 100644 --- a/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/validators/FaxToMailEmailsValidator.java +++ b/faxtomail-service/src/main/java/com/franciaflex/faxtomail/services/validators/FaxToMailEmailsValidator.java @@ -24,21 +24,46 @@ package com.franciaflex.faxtomail.services.validators; * #L% */ -import com.opensymphony.xwork2.validator.validators.EmailValidator; +import com.opensymphony.xwork2.validator.ValidationException; +import org.apache.commons.lang3.StringUtils; +import org.nuiton.util.StringUtil; +import org.nuiton.validator.xwork2.field.NuitonFieldValidatorSupport; /** - * Surcharge du validateur d'email par default de struts - * pour autoriser plusieurs emails séparés par des points-virgule + * Validateur pour autoriser plusieurs emails séparés par des points-virgule */ -public class FaxToMailEmailsValidator extends EmailValidator { +public class FaxToMailEmailsValidator extends NuitonFieldValidatorSupport { - // see XW-371 - public static final String EMAIL_ADDRESSES_PATTERN = - "\\b^['_a-z0-9-\\+]+(\\.['_a-z0-9-\\+]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*\\.([a-z]{2,6})" + - "(\\s*;\\s*['_a-z0-9-\\+]+(\\.['_a-z0-9-\\+]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*\\.([a-z]{2,6}))*" + - "$\\b"; - public FaxToMailEmailsValidator() { - setRegex(EMAIL_ADDRESSES_PATTERN); + @Override + public void validateWhenNotSkip(Object object) throws ValidationException { + + String fieldName = getFieldName(); + Object allValues = getFieldValue(fieldName, object); + + if (allValues == null) { + // no value defined + return; + } + if (allValues instanceof String) { + + String[] values = StringUtils.split((String)allValues,';'); + for (String value:values) { + if (StringUtils.isEmpty(value)) { + // no value defined + return; + } + if (!StringUtil.isEmail(value)) { + addFieldError(fieldName, object); + } + } + } else { + addFieldError(fieldName, object); + } + } + + @Override + public String getValidatorType() { + return "emails"; } } diff --git a/faxtomail-service/src/main/resources/validators.xml b/faxtomail-service/src/main/resources/validators.xml index 56e1156c..d9f9970b 100644 --- a/faxtomail-service/src/main/resources/validators.xml +++ b/faxtomail-service/src/main/resources/validators.xml @@ -47,6 +47,6 @@ <validator name="existingFile" class="org.nuiton.validator.xwork2.field.ExistingFileFieldValidator"/> <!-- les validateur specifiques --> - <validator name="email" class="com.opensymphony.xwork2.validator.validators.EmailValidator"/> + <validator name="email" class="org.nuiton.validator.xwork2.field.EmailFieldValidator"/> <validator name="emails" class="com.franciaflex.faxtomail.services.validators.FaxToMailEmailsValidator"/> </validators> diff --git a/pom.xml b/pom.xml index 5308e3ff..ce4ce334 100644 --- a/pom.xml +++ b/pom.xml @@ -108,7 +108,7 @@ <nuitonCsvVersion>3.0</nuitonCsvVersion> <nuitonDecoratorVersion>3.0</nuitonDecoratorVersion> <nuitonUtilsVersion>3.0-java6</nuitonUtilsVersion> - <nuitonValidatorVersion>3.2</nuitonValidatorVersion> + <nuitonValidatorVersion>3.3</nuitonValidatorVersion> <nuitonWebVersion>1.18</nuitonWebVersion> <eugeneVersion>2.13</eugeneVersion> -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@codelutin.com>.
participants (1)
-
codelutin.com scm