JDK-8039301 : [ja] Host Locale Provider uses non-translated Calendar field names
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.util:i18n
  • Affected Version: 8
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • Submitted: 2014-04-04
  • Updated: 2019-07-22
  • Resolved: 2016-01-05
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 9
9 b101Fixed
Related Reports
Relates :  
Relates :  
Relates :  
Description
 When Host Locale Provider was used and OS is configured as Japanese Imperial 
Calendar, a non-translated Era name is retrieved. The Windows OS uses the 
translated Era name if Japanese Imperial Calendar is used, so the Host locale 
provider should do the same. 
 
Host Locale Provider is a new function of JDK 8, and supports only Windows 
Vista onwards. The function retrieves the OS's locale definitions. Era name 
is one of them. 
 
Also note that if the locale provider is "JRE", the Era name is displayed 
correctly in Japanese. 
 
-------------------------------------------------------------------------------------------------------------------------------------------
2014/09/15

This also happens in all the other calendar fields including month, weekday and am pm marker.

Attached is the test log. The pattern and symbols are correct. Only calendar fields are not localized when locale provider is HOST.

- Windows' locale for formatting
Japanese

- Windows' locale for UI language
Japanese. When the UI language is not Japanese but the format language is Japanese, the result is the same.

- Windows' system locale
Japanese for non-unicode application

- Windows' Japanese calendar's language (English or Japanese)
It should be Japanese. Please refer to the attached snapshot of windows control panel

- Java runtime's locales (if any, e.g., -Duser.*).  
It's not specified. The locale was got from the windows. Locale.getDefault(Locale.Category.FORMAT) is used in the test.


Comments
Need to implement CalendarNameProvider in Windows' HostLocaleProviderAdapter implementation.
22-10-2015