roaddefectsearchdatevalidator.java

来自「Java的框架」· Java 代码 · 共 59 行

JAVA
59
字号
package mcaps.apps.prrm.roaddefect.webapp.validator;

import mcaps.apps.prrm.roaddefect.webapp.command.RoadDefectSearchDateCommand;

import org.springframework.util.StringUtils;
import org.springframework.validation.Errors;
import org.springframework.validation.Validator;
import org.apache.commons.validator.DateValidator;

/**
 * <code>Validator</code> for <code>RoadDefectSearch</code> forms.
 * 
 * @author jov
 * @date Sep 23, 2005
 * @version 1.0.1.0
 */
public class RoadDefectSearchDateValidator implements Validator {

	/* (non-Javadoc)
	 * @see org.springframework.validation.Validator#supports(java.lang.Class)
	 */
	public boolean supports(Class cls) {
		return RoadDefectSearchDateCommand.class.isAssignableFrom(cls);
	}

	/* (non-Javadoc)
	 * @see org.springframework.validation.Validator#validate(java.lang.Object, org.springframework.validation.Errors)
	 */
	public void validate(Object obj, Errors errors) {
		RoadDefectSearchDateCommand command = (RoadDefectSearchDateCommand) obj;
		if ((command.getStartDate() == null )&&
				(command.getEndDate() == null)){
			errors.reject("roadDefect.search.nulldates", "Either Start Date or End Date is required.");
			return;
		}
		if ((!StringUtils.hasLength(command.getStartDate()) )&&
				(!StringUtils.hasLength(command.getEndDate()))){
			errors.reject("roadDefect.search.nulldates", "Either Start Date or End Date is required.");
			return;
		}
		if (command.getStartDate() != null){
			if (command.getStartDate().length() > 0){
				if (!DateValidator.getInstance().isValid(command.getStartDate(),command.getDateFormat(),false)){
					errors.rejectValue("startDate", "roadDefect.search.invalid.startdate", new Object[]{command.getDateFormat()},"Invalid Start Date.");
				}		
			}
		}
		if (command.getEndDate() != null){
			if (command.getEndDate().length() > 0){
				if (!DateValidator.getInstance().isValid(command.getEndDate(),command.getDateFormat(),false)){
					errors.rejectValue("endDate", "roadDefect.search.invalid.enddate",new Object[]{command.getDateFormat()}, "Invalid End Date.");
				}
			}
		}
		
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?