date Validation trong Struts 2

Date validator kiểm tra xem date đã cung cấp có trong dãy giá trị đã cho hay không.

Có ba tham số được định nghĩa cho date validator, đó là:

  • fieldName: xác định tên trường mà để được validate. Nó chỉ bắt buộc trong Plain-Validator.
  • min: xác định giá trị tối thiểu. Theo mặc định, nó được bỏ qua.
  • max: xác định giá trị tối đa. Theo mặc định, nó được bỏ qua.

Ví dụ date validation

Cho Plain Validator:

<validators>
  <!-- Vi du cho Plain Validator -->
         <validator type="date">
      <param name="fieldName">dob</param>
          <param name="min">01/01/1980</param>
          <param name="max">01/01/2010</param>
          <message>Ngay sinh phai nam trong khoang tu  toi </message>
    </validator>    
</validators>

Cho Field Validator:

<validators>
   <!-- Vi du cho Field Validator -->
      <field name="dob">
        <field-validator type="date">
            <param name="min">01/01/1980</param>
              <param name="max">01/01/2010</param>
              <message>Ngay sinh phai nam trong khoang tu  toi </message>
        </field>
      </field>


</validators>

Ví dụ đầy đủ date validation trong Struts 2

Tạo index.jsp

Cho input từ người dùng. Nó nhận name, password, và email id từ người dùng.

<%@ taglib uri="/struts-tags" prefix="s" %>


<s:form action="register">
<s:textfield name="dob" label="Ngay sinh"></s:textfield>
<s:submit value="register"></s:submit>
</s:form>

Tạo lớp action

: Lớp này kế thừa lớp ActionSupport và ghi đè phương thức validate.

RegisterAction.java

package com.hoclaptrinh;


import java.util.Date;


import com.opensymphony.xwork2.ActionSupport;


public class Register extends ActionSupport{
private Date dob;


public Date getDob() {
    return dob;
}


public void setDob(Date dob) {
    this.dob = dob;
}


public String execute(){
    return "success";
}


}

Tạo validation file

Tại đây chúng ta đang sử dụng bundled validator để thực hiện trình validation.

Register-validation.xml

<?xml version="1.0" encoding="UTF-8"?>


        <validators>


        <field name="dob">
        <field-validator type="date">
        <param name="min">01/01/1950</param>
        <param name="max">01/01/2010</param>


        <message>Ngay sinh phai nam trong khoang tu  toi </message>
        </field-validator>
        </field>


        </validators>

Tạo struts.xml

xml file định nghĩa một result bởi tên đã nhập, và một interceptor là jsonValidatorWorkflowStack.

<?xml version="1.0" encoding="UTF-8" ?>


<struts>


<package name="default" extends="struts-default">
<action name="register" class="com.hoclaptrinh.Register">
<result name="input">index.jsp</result>
<result>welcome.jsp</result>
</action>
</package>


</struts>     

Tạo các thành phần view

JSP file đơn giản này hiển thị thông tin về người dùng.

welcome.jsp

%@ taglib uri="/struts-tags" prefix="s" %>
Ngay sinh:<s:property value="dob"/>

Bình luận