<< back to Core Developers Guide Edit on GitHub

# Using Non Field Validators

## Description

The followings show a simple example using Webwork’s Non Field Validators

Step 1

Create the jsp page

    			<s:actionerror/>

    			<s:form method="POST" action="submitNonFieldValidatorsExamples" namespace="/validation">
    				<s:textfield name="someText" label="Some Text"/>
    				<s:textfield name="someTextRetype" label="Retype Some Text"/>
    				<s:textfield name="someTextRetypeAgain" label="Retype Some Text Again"/>
    				<s:submit label="Submit" cssClass="btn btn-primary"/>
    			</s:form>

Step 2

Create the action class

    public class NonFieldValidatorsExampleAction extends AbstractValidationActionSupport {

    	private static final long serialVersionUID = -524460368233581186L;

    	private String someText;
    	private String someTextRetype;
    	private String someTextRetypeAgain;

    	public String getSomeText() {
    		return someText;
    	}

    	public void setSomeText(String someText) {
    		this.someText = someText;
    	}

    	public String getSomeTextRetype() {
    		return someTextRetype;
    	}

    	public void setSomeTextRetype(String someTextRetype) {
    		this.someTextRetype = someTextRetype;
    	}

    	public String getSomeTextRetypeAgain() {
    		return someTextRetypeAgain;
    	}

    	public void setSomeTextRetypeAgain(String someTextRetypeAgain) {
    		this.someTextRetypeAgain = someTextRetypeAgain;
    	}
    }

Step 3

Create the validator.xml.

    <validators>
    	<validator type="expression">
    		<param name="expression"><![CDATA[ ( (someText == someTextRetype) && (someTextRetype == someTextRetypeAgain) ) ]]></param>
    		<message><![CDATA[ all three text must be exactly the same ]]></message>
    	</validator>
    </validators>