Hello!
See annotations in Java EE. When testing a simple program, what should be removed with a successful test is not displayed in the EmailValidator class!
What could be the problem? I would be happy with the options for the new code / fixed code!
@Target(ElementType.FIELD) @Retention(RetentionPolicy.RUNTIME) @Constraint(validatedBy = {EmailValidation.EmailValidator.class}) public @interface EmailValidation { String regularExpression() default "^[_A-Za-z0-9-\\\\+]+(\\\\.[_A-Za-z0-9-]+)*@\"\n" + "\t\t+ \"[A-Za-z0-9-]+(\\\\.[A-Za-z0-9]+)*(\\\\.[A-Za-z]{2,})$"; String message() default "Wrong input"; class EmailValidator implements ConstraintValidator<EmailValidation,User>{ private static String regEX; private static String message; private static String emailField; public void initialize(EmailValidation email) { regEX = email.regularExpression(); message = email.message(); emailField = User.getEmail(); } public boolean isValid(User user, ConstraintValidatorContext constraintValidatorContext) { return emailValidation(user); } private boolean emailValidation(User user){ if(!(emailField.matches(regEX))){ System.out.print("Checking"); System.out.print(message); return false; } System.out.print("AllMatches"); return true; } } ================================================= =======================
public class ApplTest { public static void main(String [] string){ User user = new User("Aleksey","13224","Aleksey.Alekseev88@gmail.com"); } } ================================================= =======================
public class User { public static String getUserName() { return userName; } public static String getPassword() { return password; } public static String getEmail() { return email; } public User(String userName, String password, String email) { setUserName(userName); setEmail(email); setPassword(password); } private static void setUserName(String userName) { User.userName = userName; } private static void setPassword(String password) { User.password = password; } private static void setEmail(String email) { User.email = email; } private static String userName; private static String password; @EmailValidation // Не работает! private static String email; }