=== modified file 'dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/util/DateUtils.java' --- dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/util/DateUtils.java 2014-10-08 07:48:52 +0000 +++ dhis-2/dhis-support/dhis-support-system/src/main/java/org/hisp/dhis/system/util/DateUtils.java 2014-10-15 09:24:13 +0000 @@ -28,7 +28,6 @@ * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ -import org.apache.commons.validator.routines.DateValidator; import org.hisp.dhis.i18n.I18nFormat; import org.hisp.dhis.indicator.Indicator; import org.hisp.dhis.period.Period; @@ -385,17 +384,18 @@ return yearString + "-" + monthString + "-" + dayString; } + private static final String DEFAULT_DATE_REGEX = "\\b\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-2])\\b"; + /** * This method checks whether the String inDate is a valid date following * the format "yyyy-MM-dd". * - * @param date the string to be checked. - * @return true/false depending on whether the string is a date according to - * the format "yyyy-MM-dd". + * @param dateString the string to be checked. + * @return true/false depending on whether the string is a date according to the format "yyyy-MM-dd". */ public static boolean dateIsValid( String dateString ) { - return DateValidator.getInstance().isValid( dateString, DEFAULT_DATE_FORMAT ); + return dateString.matches( DEFAULT_DATE_REGEX ); } /** === modified file 'dhis-2/dhis-support/dhis-support-system/src/test/java/org/hisp/dhis/system/util/DateUtilsTest.java' --- dhis-2/dhis-support/dhis-support-system/src/test/java/org/hisp/dhis/system/util/DateUtilsTest.java 2014-10-14 13:30:08 +0000 +++ dhis-2/dhis-support/dhis-support-system/src/test/java/org/hisp/dhis/system/util/DateUtilsTest.java 2014-10-15 09:24:13 +0000 @@ -50,6 +50,14 @@ assertFalse( dateIsValid( "07-07-2000" ) ); assertFalse( dateIsValid( "2000-03-40" ) ); assertFalse( dateIsValid( "20d20-03-01" ) ); + assertTrue( dateIsValid( "0000-12-32" ) ); + assertTrue( dateIsValid( "2014-01-01" ) ); + assertFalse( dateIsValid( "2014-12-33" ) ); + assertFalse( dateIsValid( "2014-13-32" ) ); + assertFalse( dateIsValid( "2014-ab-cd" ) ); + assertFalse( dateIsValid( "201-01-01" ) ); + assertFalse( dateIsValid( "01-01-01" ) ); + assertFalse( dateIsValid( "abcd-01-01" ) ); } @Test