Validator 사용하기
Spring/주소록 만들기 : 2007. 2. 7. 20:51
앞에서 만든 검색창을 사용할 때 빈 값을 넣으면 에러 메시지가 오른쪽에 출력하도록 하고 싶어졌습니다.

저렇게 해주고 싶으면 먼저 Validator가 필요하고...Controller에 Validator를 등록해줘야 하고...View에서 에러 출력할 부분을 표시해 줘야 합니다.
1. Validator 구현하기
위 코드는 Spring Reference 13.9.12에 있는 error tag 부분에 있는 소스를 거의 그대로 사용했습니다. 여기에 있는 코드를 보기 전에는 Pro Spring을 보고 아래처럼 구현했었습니다. 전 위가 더 간단해 보이고 편했습니다.
2. Controller에 등록하기.
3. View에 자리잡기.
4. 실험해 봤습니다.

수고했삼~
저렇게 해주고 싶으면 먼저 Validator가 필요하고...Controller에 Validator를 등록해줘야 하고...View에서 에러 출력할 부분을 표시해 줘야 합니다.
1. Validator 구현하기
public class SearchingValidator implements Validator {
@SuppressWarnings("unchecked")
public boolean supports(Class clazz) {
return MemberCommand.class.isAssignableFrom(clazz);
}
public void validate(Object obj, Errors errors) {
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "keyword", "required", "Field is required.");
}
}
@SuppressWarnings("unchecked")
public boolean supports(Class clazz) {
return MemberCommand.class.isAssignableFrom(clazz);
}
public void validate(Object obj, Errors errors) {
ValidationUtils.rejectIfEmptyOrWhitespace(errors, "keyword", "required", "Field is required.");
}
}
위 코드는 Spring Reference 13.9.12에 있는 error tag 부분에 있는 소스를 거의 그대로 사용했습니다. 여기에 있는 코드를 보기 전에는 Pro Spring을 보고 아래처럼 구현했었습니다. 전 위가 더 간단해 보이고 편했습니다.
2. Controller에 등록하기.
<bean name="/search.do"
class="member.web.SearchMemberController">
<property name="memberRepository" ref="memberRepository" />
<property name="validator" ref="searchingValidator" />
</bean>
<!-- Validator 등록 -->
<bean name="searchingValidator" class="validator.SearchingValidator"/>
class="member.web.SearchMemberController">
<property name="memberRepository" ref="memberRepository" />
<property name="validator" ref="searchingValidator" />
</bean>
<!-- Validator 등록 -->
<bean name="searchingValidator" class="validator.SearchingValidator"/>
3. View에 자리잡기.
<table>
<tr>
<td>SEARCH:</td>
<td><form:input path="keyword" /></td>
<td><form:errors path="keyword" /></td>
<td><input type="submit" value="GO" /></td>
</tr>
</table>
<tr>
<td>SEARCH:</td>
<td><form:input path="keyword" /></td>
<td><form:errors path="keyword" /></td>
<td><input type="submit" value="GO" /></td>
</tr>
</table>
4. 실험해 봤습니다.
수고했삼~
'Spring > 주소록 만들기' 카테고리의 다른 글
DisplayTag 링크 기능 (0) | 2007.02.08 |
---|---|
Validator 사용하기 (0) | 2007.02.07 |
검색창 하나로 모든 필드에서 검색하기. (4) | 2007.02.07 |
SimpleFormController 에피소드2 (0) | 2007.02.02 |
SimpleFormController 에피소드1 (2) | 2007.02.02 |
Spring's form tag (0) | 2007.02.01 |
DisplayTag과 SpringMVC (0) | 2007.01.31 |
DisplayTag 배끼기 (2) | 2007.01.31 |
주소록 개발 카탈로그 (4) | 2006.12.30 |
JSP 화면 작성 (0) | 2006.12.29 |
Spring MVC configuration 파일들 설정 하기 (0) | 2006.12.26 |
TAG validator