Gdy pierwszy raz pisałem o walidatorze Hibernate dla NIP, utworzyłem jedynie testy jednostkowe, pozwalające sprawdzić poprawność działania samego algorytmu. Dla przypomnienia, poniżej przedstawiam użytą wówczas metodę testową:
@Test(dataProvider="nipValidator.isValid")
public void testIsValid(
NIP annotation, Object value, boolean ...
Więcej…
W związku z sugestiami czytelników, postanowiłem utworzyć i opublikować kilka przydatnych walidatorów Hibernate. Na początek przygotowałem adnotacje dla czterech numerów identyfikacyjnych: NIP, PESEL, REGON oraz seria i numer dowodu osobistego (@IdentityCard).
Najlepiej będzie, jeżeli wyjaśnię działanie walidatorów na przykładach:
import javax.persistence.*;
import pl.info.czerwinski.validators.IdentityCard;
import pl.info.czerwinski.validators.NIP;
import pl.info.czerwinski.validators.PESEL;
import static pl.info.czerwinski.validators.NIP.PersonType.*;
@Entity
@Table(name="persons")
public ...
Więcej…
Uwaga: Walidator uzupełniony o format bez łączników oraz weryfikację cyfry kontrolnej znajduje się w projekcie opisanym w artykule Dodatkowe walidatory Hibernate. Niniejszy wpis dotyczy głównie użycia parametrów adnotacji walidatora.
Opisując tworzenie nowego walidatora Hibernate wspomniałem o parametrach adnotacji. Postanowiłem utworzyć przykład takiej walidacji dla Numerów ...
Więcej…