Spring mvc annotation validation integer

У меня есть объект.

public class MyObject
{
   ....
   @Column(name = "a_number") @NotNull @NumberFormat(style = Style.NUMBER) @Min(1)
   private Integer aNumber;
   ...
   //getters and setters
}

В моем контроллере есть аннотация @Valid для моего публикуемого объекта. У меня есть проверка, работающая над всеми моими другими полями в классе (их всеми строками), кроме этого числа. Если я ввожу число из своей формы, он работает нормально, а если я нарушаю @Min (1), он также дает мне правильную ошибку проверки. Однако моя проблема в том, что если вы вводите строку вместо числа, возникает исключение NumberFormatException.

Я видел много примеров Integer и проверки, но никто не учитывает, если вы вводите строку в публикуемую форму. Нужно ли мне проводить проверку еще где? Javascript? Я хотел бы, чтобы решение соответствовало остальной части весенней проверки, чтобы я мог использовать его в других классах. Я просто хотел бы получить сообщение об ошибке, указывающее, что оно должно быть числовым. Также я пробовал использовать аннотацию @Pattern, но, видимо, только для строк.

Есть предложения?

7
задан sauce 3 November 2011 в 15:57
поделиться