JDK-7091601 : Arabic Locale: can not set type of digit in application level
  • Type: Enhancement
  • Component: core-libs
  • Sub-Component: java.util:i18n
  • Affected Version: 6u26
  • Priority: P3
  • Status: Resolved
  • Resolution: Fixed
  • OS: windows_2008
  • CPU: generic
  • Submitted: 2011-09-16
  • Updated: 2013-04-19
  • Resolved: 2013-04-03
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.
8 b86Fixed
Related Reports
Relates :  
This is how it's reproducible on Mac with Arabic Locale:

unlocalized numbers for choosing number of MB in network tab

1. Launch Java Preferences.
2. Click Network tab and check all strings.

Hindi Numerals

Arabic Numerals

Apple states it's reproducible on Windows as well. Here are the customer's comments.

The full Windows locale needs to be changed to Arabic. The numerals that are expected are actually called "Hindi numerals" (it's weird, I know). This problem is not unique to Java Preferences, since it is a general Arabic language expectation to see Hindi-style numerals everywhere where we see "standard" numbers (confusingly called Arabic numerals) in English and most other languages.

This bug started off life as a specific complaint from our localizers about Java Preferences, but really it's a problem for the Java platform to address when running in Arabic (since it's unrealistic to expect all client code everywhere to put special numeric handlers on their text fields for just one language).
I change the synopsis of this CR and set the category to i18n. 

Below is the feed back from Apple:
It is false to think that most people are not using Hindi digits nowadays in Arab countries.
Actually it is the opposite. KSA, UAE, Egypt, Jordan and many other countries, which are our target market strongly use Hindi digits in their daily life.
There is "confusion" on other part of the world,  where they can use both like in Lebanon, Oman, Kuwait etc.

This is set in the preferences, in fact, and depending on the Locale set, the user will see Hindi or Arabic digits appear.
That is, our main market, KSA, will definitely set their Computer's locale to KSA, and they *do* expect to get Hindi digits everywhere.
We have been working on making sure the numerals appear based on the locale set, and not hardcoded, in the whole OS.
For consistency, I highly recommend we do that everywhere we could.
Forcing users to use Arabic digits just because "we *think* they are not used anymore" is not the right thing do to.

We get all the data from CLDR, which is how we "know" what type of digits is used in a country or another.
At an application level we give the user a *choice* to use the digits his country is used to use, not what we think is goo for him.

Formatted numbers using java.text.NumberFormat will follow the user settings in the underlying operating system when the HOST locale provider adapter is used.

EVALUATION Changed this to an RFE, which should be taken care along with the RFE 6337471.

EVALUATION Close the CR as not a defect, because more Arab countries and institutions regard "0, 1, 2 ..." as Arabic digits instead of indic number. To Customize the output of digit is an i18n RFE on application feature level.

EVALUATION Is this similar to 6871307? That CR was cloased as not a bug. I think it needs language specialist to decide if it's a bug or not. My feeling is that at least it's not a P2 CR. Below are the comments Georges gave when evaluating 6871307: Hi, First a correction: 0,1 ... 9 Are Arabic digits, not European digits. And Arabic-Indic are simply Indic digits. If you input Arabic text followed by a number does not mean that the digits of that number need to be Indic digits. The is a confusion in the Arab world. Lot of people think that 0, 1, 2.. are European digits, but now a lot of of Arab countries are realizing what the real Arabic digits are and are using them instead of Indic digits. As an example please see attached a date from an Arabic newspaper. Some still think that the Indic digits are Arabic-Indic digits and still using them. So it depends on the country/Institution about which digits to use. There is no rule about it. It is a user preference. I think the user should be able to choose which digits to be used on the application level.