struts-config.xml로 검색한 결과 :: 시소커뮤니티[SSISO Community]
 
SSISO 카페 SSISO Source SSISO 구직 SSISO 쇼핑몰 SSISO 맛집
추천검색어 : JUnit   Log4j   ajax   spring   struts   struts-config.xml   Synchronized   책정보   Ajax 마스터하기   우측부분

회원가입 I 비밀번호 찾기


SSISO Community검색
SSISO Community메뉴
[카페목록보기]
[블로그등록하기]  
[블로그리스트]  
SSISO Community카페
블로그 카테고리
정치 경제
문화 칼럼
비디오게임 스포츠
핫이슈 TV
포토 온라인게임
PC게임 에뮬게임
라이프 사람들
유머 만화애니
방송 1
1 1
1 1
1 1
1 1
1

struts-config.xml로 검색한 결과
등록일:2008-03-16 10:14:31
작성자:
제목:스트럿츠에서 Validator Plug in 사용하기


Validator Plugin 사용! ( 톰캣 서버를 재시작 할 필요가 없다 )

 

-> 간단 버젼 : 공백 유무만 체크하기

-> 필수 수정파일 : validator.xml,  ActionForm( 폼빈 ), struts-config.xml, jsp파일

-> 참고 파일 : validator-rules.xml


<<  로그인시 아이디의 공백 유무 검사하기  >>

첫 페이지 이름 : login.jsp
폼 빈 이름 : LoginForm.java
액션빈 이름 : LoginAction.java


일단 struts로 동작하도록 모든 링크 설정을 한다..
그리고 나서 공백유무의 validation 시작~~


1. Form 자바파일의 상속을 ActionForm에서 ValidatorForm 으로 변경

 (예)   public class LoginForm extends ActionForm  을

          public class LoginForm extends ValidatorForm  으로 변경

 

2. validator.xml 작성

 <formset>

  <form name="loginForm">               struts-config.xml에서 등록한 FormBean의 name을 연결

   <field property="id" depends="required">        property는 검사할 곳(login.jsp 파일의 아이디 입력부분의 name값) 
                                                                    required는 공백유무 검사하는 명령어

    <arg key="loginForm.id" />    key는 보여질 에러 메세지이름, 이 이름대로 MessageResources.properties에 등록
   
   </field>
  
  </form>
 
 </formset>

 

3. jsp 파일에 html:errors 처리 위해 한줄 추가하기

 <%@taglib prefix="html" uri="/WEB-INF/struts-html.tld" %>

 <html:errors />  입력하면 에러메세지 보여줌

 

4. 에러 메세지가 보이지 않을 때는 struts-config.xml 의 <action-mappings>안의 <action>의 validate를 true로 바꾸고 input="/돌아갈곳.jsp" 추가

(예) <action path="/login" name="loginForm" type="app.web.LoginAction" validate="true" input="/login.jsp">

 

 

끝~   とても簡単なんでしょう!!!

 


 

 

[참고] 에러 메세지가 보여지는 방법

 

1. validation의 종류에 따라 validator-rules.xml 파일안의  해당 validator name의 msg 를 찾는다.

 

(예) validation의 종류가 required(공백체크) 라면 

 

------- validator-rules.xml 파일안에서 아래 msg="errors.required" 를 찾는다..

<validator name="required"
            classname="org.apache.struts.validator.FieldChecks"
               method="validateRequired"
         methodParams="java.lang.Object,
                       org.apache.commons.validator.ValidatorAction,
                       org.apache.commons.validator.Field,
                       org.apache.struts.action.ActionMessages,
                       javax.servlet.http.HttpServletRequest"
                  msg="errors.required"/>

------------

 

2. MessageResources.properties 파일에서 errors.required를 찾으면    errors.required={0} is required. 라고 되어있지~

요것이 보이는 메세지 이고,,,  {0} 부분은 우리가 직접 셋팅 가능

 

3. {0} 부분은 validator.xml 내의 <arg key="loginForm.id" />  를 보면 loginForm.id라는 이름으로 등록되어있으므로

   이 이름대로 MessageResources.properties에 등록 되어 있는 것을 출력한다.

 loginForm.id 라는 이름은 사용자가 맘대로 바꿔줘도 상관없는 그냥 이름 임.. ㅋㅋㅋ

 

MessageResources.properties에 

                                                   loginForm.id=ㅋㅋㅋㅋ 테스트다~                  

 라고 추가하면

 

최종 에러메세지는 

 

ㅋㅋㅋㅋ 테스트다~ is required.        이렇게 된다!!

 

 

 

 

 

email, date, range, maxlength, minlength 등의 validation 은 각자 응용 해 보아요~~

 

각각의 사용법이 조금씩 틀리니 쌤이 나눠준 프린터 참고!!