プロファイルXMLによる簡単な検証


フレームワークによる検証により、Actionの負担を軽減
フレームワークの検証機能は、入力されたデータが0~100の単純なインスタンスでしか実現できないことを検証することによって実現されます.
要求の順序外向内から順に必要なファイル
単純なJSPページ(validateTest.jsp)+検証XMLファイル(validateTestAction-validation.xml)+単純(ActionvalidateTestAction.java)+Struts.xmlファイルでアクションを構成する
簡単JSPページ:validateTest.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <title>            </title>
    </head>
    <body>
        <center>
            <h3>
                ${returnmsg}
            </h3>
            <s:form action="validateTest.do">
                <s:textfield name="message" label="       " />
                <s:submit value="  " />
            </s:form>
        </center>
    </body>
</html>

 
検証されたXMLファイル:validateTestAction-validation.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
    <field name="message">
        <field-validator type="int">
            <param name="min">0</param>
            <param name="max">100</param>
            <message>        0-100  </message>
        </field-validator>
    </field>
</validators>

 
簡単なことですjava
package Struts.action;

import com.opensymphony.xwork2.ActionSupport;

@SuppressWarnings("serial")
public class validateTestAction extends ActionSupport {
   
    private Integer message;
   
    private String returnmsg;

    public String getReturnmsg() {
        return returnmsg;
    }

    public void setReturnmsg(String returnmsg) {
        this.returnmsg = returnmsg;
    }

    public Integer getMessage() {
        return message;
    }

    public void setMessage(Integer message) {
        this.message = message;
    }
   
    public String execute()throws Exception{
        returnmsg = "  "+message+" 0-100  !";
        return SUCCESS;
    }
}

 
Strutsでxmlファイルでアクションを構成する
<action name="validateTest" class="Struts.action.validateTestAction">
            <!--   result     name    SUCCESS   -->
            <result>/validateTest.jsp</result>
            <!--   input           ,                 -->
            <result name="input">/validateTest.jsp</result>
</action> 

フレームワークの検証にはリソースが必要です.一般的に簡単なデータの種類、範囲などの検証はjavaScriptで完了すれば、フレームワークで検証する必要はありません.一部の検証はAJAXで行うこともできます.