Ciao ragazzi,
stò usando Hibernate Validator (che è un'implementazione di JSR 303) per effettuare la validazione dei campi dei bean.
Ho un problema su come validare un campo e-mail.
Vi faccio l'esempio concreto che si capisce al volo.
In un bean chiamato ChangeEmailAddressForm ho un campo di tipo String chiamato emailAddress, tale campo deve rispettare i seguenti 2 constraint:
1) NON DEVE ESSERE MAI NULLO
2) DEVE RISPETTARE IL CORRETTO FORMATO DI UN INDIRIZZO MAIL: qualcosa come:
nome@servizio.xx o nome.cognome@servizio.xx insomma...il formato dei classici indirizzi e-mail
Io ho fatto nel seguente modo:
L'annotation @NotEmpty funziona correttamente ma mi sono accorto che l'annotation @Email invece dà un problema in quanto accetta anche e-mail del tipo: nome.cognome@serviziocodice:@NotEmpty(message="Devi inserire un indirizzo email") @Email(message="Inserisci un indirizzo e-mail valido") private String emailAddress;
In pratica accetta email senza il .it\.com\.net o quel che sia finale...da quello che ho capito email di questo tipo sono considerate e-mail valide perchè se l'applicazione girasse sulla stessa macchina dove gira anche il mio mail service potrei tranquillamente mandare una mail a: nome.cognome@mywebservicename
Però queto non è il mio caso...io ho proprio bisogno che la e-mail sia formattata secondo i criteri classici con l'estensione finale...deve controllare che ci sia anche qualcosa come .it o .com o .net o .quelchesia finale !!!
Come posso fare? non ne riesco ad uscire
Grazie
Andrea