JDK-8219890 : Calendar.getDisplayName() returns empty string for new Japanese Era on some locales
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.util:i18n
  • Affected Version: 13
  • Priority: P3
  • Status: Closed
  • Resolution: Fixed
  • Submitted: 2019-02-28
  • Updated: 2019-08-14
  • Resolved: 2019-02-28
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 11 JDK 13 JDK 8 Other
11.0.3Fixed 13 b11Fixed 8u231Fixed openjdk7uFixed
Related Reports
Relates :  
Relates :  
Description
Run getDisplayName(ERA, SHORT, Locale.forLanguageTag("zh")), attached the test code.
Actual result:
* run with -Djava.locale.providers=COMPAT,CLDR, it will return "N"
* run with -Djava.locale.providers=CLDR,COMPAT, it will return empty string. 
* run with default data provider, it will return empty string.

Expected result:
Shouldn't return empty string.
Comments
Fix Request: This fix is required as a prerequisite for the Japanese Era changes (e.g. JDK-8205432) in both, jdk8 updates and jdk11 updates.
09-04-2019

Placeholder names are added only for root and ja locales in CLDR with JDK-8217609. Other locales return "" for the new era. This has to fallback to JapaneseEra's default name. Meanwhile for "zh" locale, the issue will not be observed once the correct translation is in place (JDK-8218781).
28-02-2019