spring, валидация поля (Integer)
От: serjik rogmkk.narod.ru
Дата: 06.02.07 21:22
Оценка:
В форме есть поле bankCode, должно передаваться только числа, т.е.надо сделать валидацию, если есть символы (например 2344ро43), то показать ошибку. Я так понимаю, надо написать свой класс, расширяющий PropertyEditorSupport.
Я делаю так, но непашет. Подскажите, что я нетак сделал.

public void setAsText(String text) throws IllegalArgumentException {
         Integer intText = new Integer(text);
         if (!StringUtils.hasLength(text)) {
              setValue(null);
         }else{                           
            for (int i = 0; i < text.length(); ++i) {
                setValue(intText);
                 if ((Character.isDigit(text.charAt(i))) == false) {
                     setValue(new Integer(-1));
                     break;
                 }                          
             }
            
         }
         
     }

и потом в классе валидации я проверяю, если -1 — то выдаю ошибку, если null или число — то должно пройти,т.к. поле необязательное для заполнения.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.