in src/example/org/apache/commons/validator/example/ValidateExample.java [61:126]
public static void main(String[] args)
throws ValidatorException, IOException, SAXException {
InputStream in = null;
ValidatorResources resources = null;
try {
// Create a new instance of a ValidatorResource, then get a stream
// handle on the XML file with the actions in it, and initialize the
// resources from it. This would normally be done by a servlet
// run during JSP initialization or some other application-startup
// routine.
in = ValidateExample.class.getResourceAsStream("validator-example.xml");
resources = new ValidatorResources(in);
} finally {
// Make sure we close the input stream.
if (in != null) {
in.close();
}
}
// Create a test bean to validate against.
ValidateBean bean = new ValidateBean();
// Create a validator with the ValidateBean actions for the bean
// we're interested in.
Validator validator = new Validator(resources, "ValidateBean");
// Tell the validator which bean to validate against.
validator.setParameter(Validator.BEAN_PARAM, bean);
ValidatorResults results = null;
// Run the validation actions against the bean. Since all of the properties
// are null, we expect them all to error out except for street2, which has
// no validations (it's an optional property)
results = validator.validate();
printResults(bean, results, resources);
// Now set all the required properties, but make the age a non-integer.
// You'll notice that age will pass the required test, but fail the int
// test.
bean.setLastName("Tester");
bean.setFirstName("John");
bean.setStreet1("1 Test Street");
bean.setCity("Testville");
bean.setState("TE");
bean.setPostalCode("12345");
bean.setAge("Too Old");
results = validator.validate();
printResults(bean, results, resources);
// Now only report failed fields
validator.setOnlyReturnErrors(true);
results = validator.validate();
printResults(bean, results, resources);
// Now everything should pass.
validator.setOnlyReturnErrors(false);
bean.setAge("123");
results = validator.validate();
printResults(bean, results, resources);
}