requiredstring Validation xác định rằng chuỗi không thể là null hoặc blank. Theo mặc định, nó cắt tỉa (bởi tham số trim) chuỗi đã cho và sau đó kiểm tra độ dài của chuỗi có lớn hơn 0 hay không.
Các tham số của requiredstring validation trong Struts 2
Có hai tham số được định nghĩa cho requiredstring validation, đó là:
- fieldName: xác định tên trường mà để được validate. Nó chỉ bắt buộc trong Plain-Validator.
- trim: cắt tỉa các giá trị của trường. Theo mặc định là true, nghĩa là nó đươc kích hoạt theo mặc định.
Ví dụ requiredstring validation
Cho Plain Validator:
<validators> <!-- Vi du cho Plain Validator --> <validator type="requiredstring"> <param name="fieldName">username</param> <param name="trim">true</param> <message>username la bat buoc</message> </validator> </validators>
Cho Field Validator:
<validators> <!-- Vi du cho Field Validator --> <field name="username"> <field-validator type="requiredstring"> <param name="trim">true</param> <message>username la bat buoc</message> </field-validator> </field> </validators>
Ví dụ đầy đủ requiredstring 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" %>
<html>
<head>
<STYLE type="text/css">
.errorMessage{color:red;}
</STYLE>
</head>
<body>
<s:form action="register">
<s:textfield name="username" label="Username"></s:textfield>
<s:password name="userpass" label="Password"></s:password>
<s:submit value="register"></s:submit>
</s:form>
</body>
</html>
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 com.opensymphony.xwork2.ActionSupport; public class Register extends ActionSupport{ private String username,userpass; public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getUserpass() { return userpass; } public void setUserpass(String userpass) { this.userpass = userpass; } 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="username"> <field-validator type="requiredstring"> <message>Name khong duoc de trong</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" %> Welcome,<s:property value="username"/>