例如 要求 单价 为数字且非负数
/************************自定义的验证方法*************************/
public static boolean validateGreather0(Object bean, ValidatorAction va,
org.apache.commons.validator.Field field,
org.apache.struts.action.ActionMessages errors,
org.apache.commons.validator.Validator validator,
javax.servlet.http.HttpServletRequest request) {
//获取FormBean中的属性值,在提交时Struts自动填充FormBean
String value = null;
if (field.getProperty() != null && field.getProperty().length() > 0) {
value = ValidatorUtils.getValueAsString(bean, field.getProperty()); //从FormBean中查找属性值并作为字符串返回
}
//执行验证逻辑
try {
int ivalue = Integer.parseInt(value);
if (ivalue < 0)
errors.add(field.getKey(), Resources.getActionMessage(request,
va, field));
} catch (NumberFormatException e) {
errors.add(field.getKey(), Resources.getActionMessage(request, va,
field));
}
return errors.isEmpty();
}