sitelink1 | |
---|---|
sitelink2 | |
extra_vars5 | |
extra_vars6 |
Life cycle of an ActionForm

1. ValidatorForm 클래스를 상속받는다.
validate.xml에서 정의하는데에 한계가 있을 경우에는 reset과 validate메서드를 오버라이딩 하여 다음과 같이 재정의한다. validate.xml에서 정의 가능할 경우에는 위의 두 함수를 오버라이딩 할 필요는 없다.
public class CalenderEditForm extends ValidatorForm{
public ActionErrors validate(ActionMapping arg0, HttpServletRequest request) {
ActionErrors errors = super.validate(arg0, request);
if (errors == null)
errors = new ActionErrors();
if (title == null || title.equals("")) {
errors.add("title", new ActionError("errors.select.required",
"タイトル"));
}
return errors;
}
public void reset(ActionMapping mapping, HttpServletRequest request) {
super.reset(mapping, request);
}
}
2. reset과 validate메서드를 오버라이딩 한 경우는 application.properties 파일에 다음과 같은 출력할 메세지를 추가한다.
errors.select.required=<li>{0}はかならず選択してください。</li>
3. struts-config.xml 파일에서 액션태그 정의시 validate="true" 로 한다.
<action
path="/calendar_write"
type="action.calender.CalenderWriteAction"
name="calenderEditForm"
scope="request"
input="/view/calender/schedule_edit.vm"
unknown="false"
validate="true"
>
<forward
name="next"
path="/show_calendar_home.do"
redirect="false"
/>
</action>
4. validation.xml 에는 다음과 같은 태그를 삽입
<formset>
<form name="calenderEditForm">
<field property="title" depends="required">
<arg0 key="タイトル" resource="false" />
</field>
</form>
</formset>
5. 액션폼을 사용하는 액션클래스에서는 다음과 같이 클래스 상단에 주석을 작성한다.
/**
* @struts.action
* path="/calendar_write"
* name="calenderEditForm"
* scope="request"
* validate="true"
* input="/view/calender/schedule_edit.vm"
* @struts.action-forward
* name="next"
* path="/show_calendar_home.do"
* redirect="true"
*/
public class CalenderWriteAction extends Action
6. vm파일에서는 다음과 같은 코드를 삽입하면 validate실패시 메세지를 출력하게 된다.
#if($errors.exist())
$!errors.msgs
#end

1. ValidatorForm 클래스를 상속받는다.
validate.xml에서 정의하는데에 한계가 있을 경우에는 reset과 validate메서드를 오버라이딩 하여 다음과 같이 재정의한다. validate.xml에서 정의 가능할 경우에는 위의 두 함수를 오버라이딩 할 필요는 없다.
public class CalenderEditForm extends ValidatorForm{
public ActionErrors validate(ActionMapping arg0, HttpServletRequest request) {
ActionErrors errors = super.validate(arg0, request);
if (errors == null)
errors = new ActionErrors();
if (title == null || title.equals("")) {
errors.add("title", new ActionError("errors.select.required",
"タイトル"));
}
return errors;
}
public void reset(ActionMapping mapping, HttpServletRequest request) {
super.reset(mapping, request);
}
}
2. reset과 validate메서드를 오버라이딩 한 경우는 application.properties 파일에 다음과 같은 출력할 메세지를 추가한다.
errors.select.required=<li>{0}はかならず選択してください。</li>
3. struts-config.xml 파일에서 액션태그 정의시 validate="true" 로 한다.
<action
path="/calendar_write"
type="action.calender.CalenderWriteAction"
name="calenderEditForm"
scope="request"
input="/view/calender/schedule_edit.vm"
unknown="false"
validate="true"
>
<forward
name="next"
path="/show_calendar_home.do"
redirect="false"
/>
</action>
4. validation.xml 에는 다음과 같은 태그를 삽입
<formset>
<form name="calenderEditForm">
<field property="title" depends="required">
<arg0 key="タイトル" resource="false" />
</field>
</form>
</formset>
5. 액션폼을 사용하는 액션클래스에서는 다음과 같이 클래스 상단에 주석을 작성한다.
/**
* @struts.action
* path="/calendar_write"
* name="calenderEditForm"
* scope="request"
* validate="true"
* input="/view/calender/schedule_edit.vm"
* @struts.action-forward
* name="next"
* path="/show_calendar_home.do"
* redirect="true"
*/
public class CalenderWriteAction extends Action
6. vm파일에서는 다음과 같은 코드를 삽입하면 validate실패시 메세지를 출력하게 된다.
#if($errors.exist())
$!errors.msgs
#end
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
11 | StrutsTest를 이용한 JUnit 테스트방법 | 황제낙엽 | 2006.02.23 | 104 |
10 | 스트러츠등의 서블릿 테스트 케이스용 툴 | 황제낙엽 | 2006.02.23 | 75 |
9 | ActionForm 생성 | 황제낙엽 | 2006.01.16 | 77 |
» | Struts 에서 FormBean 클래스 Validation 체크 하기 | 황제낙엽 | 2005.12.19 | 71 |
7 | Struts의 message-resources 를 사용한 예제 | 황제낙엽 | 2005.12.16 | 70 |
6 | Struts의 message-resources 의 사용 | 황제낙엽 | 2005.12.16 | 85 |
5 | JpetStore 에서 모든 Bean의 부모클래스 BaseBean (JPetStore-4.0.5) | 황제낙엽 | 2005.11.21 | 125 |
4 | JpetStore 에서 Action과 Form을 함께 취급하는 클래스 BeanAction (JPetStore-4.0.5) | 황제낙엽 | 2005.11.21 | 160 |
3 | 스트럿츠 자료실 게시판 만들기 목차 | 황제낙엽 | 2005.11.15 | 99 |
2 | 스트러츠 관련 FAQ | 황제낙엽 | 2005.10.14 | 61 |
1 | Struts 프로그래밍 메모 | 황제낙엽 | 2005.10.06 | 180 |