たんじゅんデータチェツク

2161 ワード

単純データ検証:addFieldErrorメソッドとs:fieldErrorラベルを使用して単純にデータ検証を処理ユーザーを追加
s:fieldErrorラベルを使用して、ラベルライブラリ<%@taglib uri="/struts-tags"prefix="s"%>
//index.jsp
  addFieldError   s:fieldError          
<a href="user/user!add?name=a" >    </a>

//user_add_error.jsp
User Add Error! <!-- s:fielderror action      fielderror   -->
		<s:fielderror fieldName="name" theme="simple" />
		<br /><!-- theme     ,        ,simple      -->
		<s:property value="errors.name[0]" /><!-- errors    map,  key(name)、value(     ) -->
		<!-- s:property      s:debug      -->
		<s:debug></s:debug><!-- s:debug -->
//struts.xml  
<constant name="struts.devMode" value="true" />
    <package name="user" extends="struts-default" namespace="/user">
        <action name="user" class="com.bjsxt.struts2.user.action.UserAction">
            <result>/user_add_success.jsp</result>
            <result name="error">/user_add_error.jsp</result>
        </action>
    </package>
//action
package com.bjsxt.struts2.user.action;

import com.opensymphony.xwork2.ActionSupport;

@SuppressWarnings("serial")
public class UserAction extends ActionSupport {
	private String name; //      
	
	public String add() {
		if(name == null || !name.equals("admin")) {
			//            ,
			this.addFieldError("name", "name is error");//      name     
			this.addFieldError("name", "name is too long");
			return ERROR;
		} 
		return SUCCESS;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

}