2015-03-16 13 views
5

Poniższy kod nie rzuca żadnego błędu i jest samodzielnym programem java. Zamiast tego, jeśli przekażę wartość null, wypisze null w konsoli. Pomóż mi, jak włączyć adnotację @notnull.javax @notnull nie działa

import javax.validation.constraints.NotNull; 

public class TestNotNull { 

public void testNotNull(@NotNull(message = "name is compulsory") String name) 
{ 
    System.out.println(name); 
} 

public static void main(String... args) 
{ 
    TestNotNull testNotNull = new TestNotNull(); 

     testNotNull.testNotNull(null); 


} 

} 
+1

@SemihEker Ten komentarz sam w sobie nic nie znaczy. Co trzeba edytować? –

+0

Te adnotacje to tylko wskazówki. Musisz dodać walidator, który wymusiłby te ograniczenia, na ścieżce klasy. Spójrz na [ten post] (http://stackoverflow.com/questions/8756768/annotations-from-javax-validation-constraints-not-working) – Kshitij

Odpowiedz

3

To nie zadziała w ten sposób. Aby wywołać te adnotacje, musisz użyć struktury sprawdzania poprawności fasoli. Sam JVM nie może sobie z tym poradzić. Proszę spojrzeć na JavaEE Tutorial na krótkie wprowadzenie do sprawdzania poprawności Java Bean. Dobrą implementacją jest Hibernate Validator, której możesz użyć w swojej aplikacji do sprawdzania adnotacji fasoli.

Nadzieję, że pomaga.

+0

@Duncan przekonałeś mnie ... –

+0

Czy wiesz jak jednostka testowa tego rodzaju metody? (ex: Junit, Mockito) – arun

+0

@arun Przeczytaj to: http://hibernate.org/validator/documentation/getting-started/ –

Powiązane problemy