RFR: JDK8U Backport of 8217609: New era placeholder not recognized by java.text.SimpleDateFormat

Deepak Kejriwal deepak.kejriwal at oracle.com
Fri Mar 1 10:44:00 UTC 2019

Hi All,


Please review the back port of fix for JDK-8217609 to 8u-dev:-


JBS report: HYPERLINK "https://bugs.openjdk.java.net/browse/JDK-%208217609"https://bugs.openjdk.java.net/browse/JDK- 8217609

Webrev: http://cr.openjdk.java.net/~pkoppula/dkejriwal/8217609/webrev.00/

Master bug change set:  http://hg.openjdk.java.net/jdk/jdk/rev/8ea340a71f17

Fix is backported from JDK 13 to JDK 8u and is not a clean backport. Reason for that is because JDK uses CLDR version 21.01 and JDK 13 uses version 33. Below are the differences between 8u and 13:- 

.         The "jp.xml" version of JDK 8u does not contains "<eraNarrow>" node (<calendar type=japanese">). Therefore "<era type="236">N</era>" which is part of fix is not added to file.

.         I've commented out one of the test data { LONG, JAPAN, "\u5143\u53f7" } in "JapaneseEraNameTest.java"  for JDK 8u.  It checks era name returned by method "java.util.Calendar.getDisplayName(int field, int style, Locale locale)"

o   The  test fails for this particular data on prior 8u releases across all existing eras(HEISI,SHOWA,..).

o   The cause of issue is that CLDR java resource file (FormatData_ja.java) generated by "CLDR Converter" does not contain required resource key "japanese.long.Eras".  The "CLDR Converter" need to be fixed to address this issue. Since this issue is an existing issue data point { LONG, JAPAN, "\u5143\u53f7" } is removed from "JapaneseEraNameTest.java" for 8u.




More information about the core-libs-dev mailing list