-
Bug
-
Resolution: Fixed
-
P3
-
1.4.0, 1.4.1
-
01
-
x86
-
windows_nt, windows_2000
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2051813 | 1.4.1 | Norbert Lindenberg | P3 | Closed | Fixed | hopper |
Name: gm110360 Date: 02/15/2002
FULL PRODUCT VERSION :
java version "1.4.0"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.0-b92)
Java HotSpot(TM) Client VM (build 1.4.0-b92, mixed mode)
FULL OPERATING SYSTEM VERSION :Windows NT 4.0 sp6
ADDITIONAL OPERATING SYSTEMS : At least all other Windows
OS.
A DESCRIPTION OF THE PROBLEM :
It looks very much like both the sdk 1.4.0 and the 1.4.0
java runtime (all languages) have been shipped missing the
internationalisation support files i18n.jar..
Both report EN, English (US) as the only availible locales,
where as RC1 worked perfectly.
You really should pull the downloads for the Windows sdk &
jre, ASAP.
I used the main FTP site to download both today
(15/02/2002).
REGRESSION. Last worked in version 1.3.1
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
1.Install sdk1.4
2.call Locale.getAvailableLocales()
3.
EXPECTED VERSUS ACTUAL BEHAVIOR :
The sdk and jre (all languages) version should have (all
languages) and not just EN, EN_US.
This bug can be reproduced always.
Release Regression From : 1.4
The above release value was the last known release where this
bug was known to work. Since then there has been a regression.
(Review ID: 139755)
======================================================================
There is one root cause, sun.text.resources.LocaleData.getAvailableLocales
private method but there are several public apis depending on it.
We have 9 first hand impact apis as below:
. java.util.Calendar.getAvailableLocales()
. java.util.Locale.getAvailableLocales()
. java.text.Collator.getAvailableLocales()
. java.text.NumberFormat.getAvailableLocales()
. java.text.BreakIterator.getAvailableLocales()
. java.text.DateFormat.getAvailableLocales()
. com.sun.tools.javadoc.DocLocale(depends on Locale.getAvailableLocales)
Since javadoc tool is a part of sdk, javadoc problem can be shown with -locale
argument when sdk is installed in a path that contains a space.
I followed this and javadoc tool was ended with
javadoc: Locale not available ko_KR
1 error
. install sdk in c:\test dir\j2sdk1.4.0
. javadoc -locale ko_KR -public -sourcepath ./src [your package]
However this user scenario must be very very rare.
###@###.### 2002-02-21
-----------------------------------------
CAP member reported the same problem:
J2SE Version (please include all output from java -version flag):
java version "1.4.1-beta"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1-beta-b06)
Java HotSpot(TM) Client VM (build 1.4.1-beta-b06, mixed mode)
Does this problem occur on J2SE 1.3 or 1.4? Yes / No (pick one)
No on 1.3, Yes on 1.4.0
Operating System Configuration Information (be specific):
Windows XP and Windows NT/4
Bug Description:
This bug was reported for version 1.4.0 on Windows XP and NT/4 systems,
depending on the path environment. When running the sample
attached on a French system (but it should be the same on
a English system), the program lists all the "locales" available.
If the path runs the Java program from the standard directory,
i.e. \WINDOWS\system32, the sample attached lists only two locales :
anglais
anglais (Etats-Unis)
If the path is set to run the Java program from \j2sdk1.4.1\bin
all countries and languages are available. See the output attached.
The two programs located in the two directories were the same.
Steps to Reproduce (be specific):
- Compile the sample,
- Set the class path so that the Java program located at this
\WINDOWS\system32 directory is running
- run the sample program
- Set the class path so that the Java program located at this
\j2sdk1.4.1\bin directory is running
- run the sample program
Two outputs are the same.
Test Program(LocaleMerlin.java)
-------------------------------------------------------------------------------
/**
* LocaleMerlin.java
*/
import java.lang.*;
import java.util.*;
/**
* Class: LocaleMerlin
*/
public class LocaleMerlin
{
/**
* Method: main <br>
* Note: Called only if we're an application. <br>
* @param java.lang.String[] args the command line arguments
* @return void
*/
public static void main(java.lang.String[] args)
{
try
{
// Locale[] locales = Calendar.getInstance().getAvailableLocales();
Locale[] locales = Locale.getAvailableLocales();
for (int i = 0; i < locales.length; i++ )
System.out.println("" + locales[i].getDisplayName());
/*
String[] ISOLanguages = Locale.getISOLanguages();
for (int i = 0; i < ISOLanguages.length; i++ )
System.out.println("" + ISOLanguages[i]);
*/
} /* End try */
catch (java.lang.Throwable exc)
{
exc.printStackTrace(System.err);
} /* End catch */
} /* End of Method: main */
} /* End of Class: LocaleMerlin */
--------------------------------------------------------------------------------
H:\j2sdk1.4.1\bin
19/03/2002 01:46 24 662 java.exe
H:\WINDOWS\system32
19/03/2002 01:46 24 662 java.exe
----------------------------------------------------------------------------------------------------------------------------
set PATH=H:\WINDOWS\system32;H:\WINDOWS;H:\WINDOWS\System32\Wbem;
java -showversion LocaleMerlin
java version "1.4.1-beta"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1-beta-b06)
Java HotSpot(TM) Client VM (build 1.4.1-beta-b06, mixed mode)
anglais
anglais (Etats-Unis)
---------------------------------------------------------------------------------------------------------------------------------------------------
set
PATH=H:\j2sdk1.4.1\bin;H:\WINDOWS\system32;H:\WINDOWS;H:\WINDOWS\System32\Wbem;
java -showversion LocaleMerlin
java version "1.4.1-beta"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.1-beta-b06)
Java HotSpot(TM) Client VM (build 1.4.1-beta-b06, mixed mode)
arabe
arabe (Emirats Arabes Unis)
arabe (Bahreïn)
arabe (Algérie)
arabe (Egypte)
arabe (Irak)
arabe (Jordanie)
arabe (Koweit)
arabe (Liban)
arabe (Libye)
arabe (Maroc)
arabe (Oman)
arabe (Qatar)
arabe (Arabie Saoudite)
arabe (Soudan)
arabe (Syrie)
arabe (Tunisie)
arabe (Yémen)
biélorusse
biélorusse (Biélo-Russie)
bulgare
bulgare (Bulgarie)
catalan
catalan (Espagne)
tchèque
tchèque (République Tchèque)
danois
danois (Danemark)
allemand
allemand (Autriche)
allemand (Suisse)
allemand (Allemagne)
allemand (Luxembourg)
grec
grec (Grèce)
anglais (Australie)
anglais (Canada)
anglais (Royaume-Uni)
anglais (Irlande)
anglais (Inde)
anglais (Nouvelle-Zélande)
anglais (Afrique du Sud)
espagnol
espagnol (Argentine)
espagnol (Bolivie)
espagnol (Chili)
espagnol (Colombie)
espagnol (Costa Rica)
espagnol (République Dominicaine)
espagnol (Equateur)
espagnol (Espagne)
espagnol (Guatemala)
espagnol (Honduras)
espagnol (Mexico)
espagnol (Nicaragua)
espagnol (Panama)
espagnol (Pérou)
espagnol (Porto Rico)
espagnol (Paraguay)
espagnol (El Salvador)
espagnol (Uruguay)
espagnol (Vénézuela)
estonien
estonien (Estonie)
finnois
finnois (Finlande)
français
français (Belgique)
français (Canada)
français (Suisse)
français (France)
français (Luxembourg)
hindi (Inde)
croate
croate (Croatie)
hongrois
hongrois (Hongrie)
islandais
islandais (Islande)
italien
italien (Suisse)
italien (Italie)
hébreu
hébreu (Israël)
japonais
japonais (Japon)
coréen
coréen (Corée du Sud)
lithuanien
lithuanien (Lithuanie)
letton
letton (Lettonie)
macédonien
macédonien (Macédoine)
hollandais
hollandais (Belgique)
hollandais (Pays-Bas)
norvégien
norvégien (Norvège)
norvégien (Norvège,Nynorsk)
polonais
polonais (Pologne)
portugais
portugais (Brésil)
portugais (Portugal)
roumain
roumain (Roumanie)
russe
russe (Russie)
serbo-croate
serbo-croate (Yougoslavie)
slovaque
slovaque (Slovaquie)
slovène
slovène (Slovénie)
albanais
albanais (Albanie)
serbe
serbe (Yougoslavie)
suédois
suédois (Suède)
thaï
thaï (Thaïlande)
turc
turc (Turquie)
ukrainien
ukrainien (Ukraine)
chinois
chinois (Chine)
chinois (Hong-Kong)
chinois (Taiwan)
anglais
anglais (Etats-Unis)
- backported by
-
JDK-2051813 REGRESSION: getAvailableLocales finds only en, en_US on Windows J2RE
- Closed
- duplicates
-
JDK-4639932 localedata.jar maybe unusable in windows jre
- Closed
- relates to
-
JDK-4849799 REGRESSION: getAvailableLocales finds only en, en_US on Windows J2RE
- Closed
-
JDK-4908932 REGRESSION:getAvailableLocales finds only en, en_US on Windows J2RE
- Closed