I am having troubles getting my own validator to work, I wonder if it is the classpath where I am pointing to my Class with? I am trying to create a dateRange validation to determin if the date falls between two dates or not. This is what I have in my validation.xml
> <field property="startDate" depends="required,date,dateRange"> > <arg0 key="Start Date" resource="false"/> > > <var><var-name>datePattern</var-name><var-value>MM/dd/yyyy</var-value></var> > > <var><var-name>minDate</var-name><var-value>07/01/2003</var-value></var> > > <var><var-name>maxDate</var-name><var-value>06/30/2004</var-value></var> > </field> > this is what I have in my validator-rules > <validator name="dateRange" > classname="gov.utah.dhs.pats.util.ValidationUtil" > method="validateDateRange" > methodParams="java.lang.Object, > org.apache.commons.validator.ValidatorAction, > org.apache.commons.validator.Field, > org.apache.struts.action.ActionMessages, > javax.servlet.http.HttpServletRequest" > depends="" > msg="errors.dateRange"/> > and my class looks like this, notice I have a println at the start of my > program, it is like it is completely ignoring my class, I am clueless how to > test this and to see what is really happening, I don't have much experience > with struts so please any suggestions would help,thank you... > package gov.utah.dhs.pats.util; > import java.text.SimpleDateFormat; > import java.util.Date; > import javax.servlet.http.HttpServletRequest; > import org.apache.commons.validator.Field; > import org.apache.commons.validator.ValidatorAction; > import org.apache.commons.validator.util.ValidatorUtils; > import org.apache.struts.action.ActionMessages; > import org.apache.struts.validator.Resources; > public class ValidationUtil { > public static final String DEFAULT_FORM_DATE_PATTERN = "M/dd/yyyy"; > public static final Date DEFAULT_MIN_DATE = getDefaultMinDate(); > public static final Date DEFAULT_MAX_DATE = getDefaultMaxDate(); > public static boolean validateDateRange(Object bean, ValidatorAction > va, Field field, ActionMessages msg, HttpServletRequest request) { > //if we're not properly configured to parse dates, > //all date validation will fail > System.out.println("!!!!!!!!!!!!!INSIDE THE VALIDATION UTILITY > the FIELD.. " + field ); > if (DEFAULT_MIN_DATE == null || DEFAULT_MAX_DATE == null) > return false; > try { > String value = ValidatorUtils.getValueAsString(bean, > field.getProperty()); > Date date = getDate(value, DEFAULT_FORM_DATE_PATTERN); > Date minDate = getDate(field.getVarValue("minDate"), > DEFAULT_FORM_DATE_PATTERN); > Date maxDate = getDate(field.getVarValue("maxDate"), > DEFAULT_FORM_DATE_PATTERN); > if (date.compareTo(minDate) < 0 || date.compareTo(maxDate) > > 0) { > msg.add(field.getKey().toString(), > Resources.getActionMessage(request, va, field)); > return false; > } > return true; > } > catch (Exception e) { > e.printStackTrace(); > msg.add(field.getKey().toString(), > Resources.getActionMessage(request, va, field)); > return false; > } > } > > protected static Date getDate(String dateString, String pattern) { > Date date = null; > try { > SimpleDateFormat df = new SimpleDateFormat(pattern); > date = df.parse(dateString); > } > catch (Exception e) { > e.printStackTrace(); > } > return date; > } > protected static Date getDefaultMinDate() { > return getDate("01/01/1900", DEFAULT_FORM_DATE_PATTERN); > } > protected static Date getDefaultMaxDate() { > return getDate("12/31/2030", DEFAULT_FORM_DATE_PATTERN); > } > } > if anyone can please just help guide me a bit on this I would appreciate it. Dwight S. Galloway (801) 538-4234 [EMAIL PROTECTED] Department of Technology Services MAKE IT A GREAT DAY! --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]