DatePicker Calendar: wrong year format when 4 digits are used (yyyy), e.g. 2010 --> 0010 ----------------------------------------------------------------------------------------
Key: WICKET-2767 URL: https://issues.apache.org/jira/browse/WICKET-2767 Project: Wicket Issue Type: Bug Components: wicket-datetime Affects Versions: 1.4.7 Reporter: Giovanni I found that there is still a bug in Wicket 1.4.7 in case that the datePattern is "dd/MM/yyyy". For example, if you use the DatePicker and select a date such as 23/02/2010 from the calendar GUI, the date selected in the DateTextField is "23/02/0010". This is the example Java code: // define the date text field for the data decorrenza DateTextField dataDecorrenzaDaTextField = new DateTextField("dataDecorrenzaDa", new PropertyModel(this.accordo, "dataDecorrenzaDa"), new PatternDateConverter("dd/MM/yyyy", true) ); // add the graphical calendar date picker dataDecorrenzaDaTextField.add(new DatePicker() { @Override protected boolean enableMonthYearSelection() { // enable month/year selection return true; } // end enableMonthYearSelection } // end DatePicker ); I found that the bug is still in the "wicket-date.js", line 137. The wrong code is: if(datePattern.match(/yy+/)) year = Wicket.DateTime.padDateFragment(year % 100); This line also makes the module 100 on the year, when the year pattern is "yyyy". The fixed code is: if(datePattern.match(/yyyy+/)) { year = year; } else if(datePattern.match(/yy+/)) year = Wicket.DateTime.padDateFragment(year % 100); -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.