commons-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Carsten Drossel (JIRA)" <j...@apache.org>
Subject [jira] Created: (VALIDATOR-221) DateValidator considers "02/29" with format "MM/dd" invalid
Date Mon, 29 Jan 2007 13:38:49 GMT
DateValidator considers "02/29" with format "MM/dd" invalid
-----------------------------------------------------------

                 Key: VALIDATOR-221
                 URL: https://issues.apache.org/jira/browse/VALIDATOR-221
             Project: Commons Validator
          Issue Type: Bug
    Affects Versions: 1.3.1 Release
         Environment: Windows XP, Java 1.5.0_04
            Reporter: Carsten Drossel
            Priority: Minor


When the date pattern contains only day and month the isValid(..)-method of DateValidator
returns false for the value Feb. 29th.

Here is a JUnit test that fails:
public void testFebruary29th() throws Exception {
  assertTrue( DateValidator.getInstance().isValid( "02/29", "MM/dd", true ) );
}

The DateValidator uses the parse(..)-method of SimpleDateFormat for the validation. This method
appears to complete any date using 01/01/1970 00:00. Since 1970 was not a leap year a ParseException
is thrown for the input "02/29" with the format "MM/dd" because 02/29/1970 is not a valid
date.

But IMHO "02/29" should be valid. An example where it makes sense is a search for persons
with a certain birthday. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-dev-help@jakarta.apache.org


Mime
View raw message