JDK-4371865 : java and appletviewer Fail to Run with Windows 2000 Unicode Locales
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.io
  • Affected Version: 1.3.0
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: windows_nt
  • CPU: x86
  • Submitted: 2000-09-18
  • Updated: 2001-07-17
  • Resolved: 2001-07-17
Related Reports
Duplicate :  
Relates :  
Relates :  
Relates :  
Description

Name: mt13159			Date: 09/18/2000


This bug is against Windows 2000 and JDK 1.4 PreBeta version B32.

Any Java application or applet fail with errors when Regional Options is set to any of the Unicode locales -- i.e., Armenian, Georgian, Hindi, Konkani, Marathi, Sanskrit, or Tamil.

This can be reproduced with Sun demos or literally any applet or application.  The following error dump is based on the result of running the JDK SwingSet2 demo.

Though I could not find a related bug number for this, the same bug also occurred in early versions of JDK 1.3.  It was corrected in JDK 1.3 FCS, but has reappeared again.

Running java -jar SwingSet2.jar on the command line produces the following:

Exception in thread "main" j a v a . l a n g . E x c e p t i o n I n I n i t i a
 l i z e r E r r o r :   j a v a . l a n g . N u l l P o i n t e r E x c e p t i
 o n
         a t   j a v a . i o . W i n 3 2 F i l e S y s t e m . n o r m a l i z e
 ( . . / . . / . . / s r c / w i n 3 2 / c l a s s e s / j a v a / i o / W i n 3
 2 F i l e S y s t e m . j a v a : 1 6 6 )
         a t   j a v a . i o . W i n 3 2 F i l e S y s t e m . g e t U s e r P a
 t h ( . . / . . / . . / s r c / w i n 3 2 / c l a s s e s / j a v a / i o / W i
 n 3 2 F i l e S y s t e m . j a v a : 2 5 9 )
         a t   j a v a . i o . W i n 3 2 F i l e S y s t e m . r e s o l v e ( .
 . / . . / . . / s r c / w i n 3 2 / c l a s s e s / j a v a / i o / W i n 3 2 F
 i l e S y s t e m . j a v a : 2 7 7 )
         a t   j a v a . i o . F i l e . g e t C a n o n i c a l P a t h ( F i l
 e . j a v a : 4 3 8 )
         a t   j a v a . l a n g . C l a s s L o a d e r . l o a d L i b r a r y
 0 ( . . / . . / . . / s r c / s h a r e / c l a s s e s / j a v a / l a n g / C
 l a s s L o a d e r . j a v a : 1 3 2 7 )
         a t   j a v a . l a n g . C l a s s L o a d e r . l o a d L i b r a r y
 ( . . / . . / . . / s r c / s h a r e / c l a s s e s / j a v a / l a n g / C l
 a s s L o a d e r . j a v a : 1 2 9 8 )
         a t   j a v a . l a n g . R u n t i m e . l o a d L i b r a r y 0 ( . .
 / . . / . . / s r c / s h a r e / c l a s s e s / j a v a / l a n g / R u n t i
 m e . j a v a : 7 4 9 )
         a t   j a v a . l a n g . S y s t e m . l o a d L i b r a r y ( S y s t
 e m . j a v a : 8 2 9 )
         a t   s u n . s e c u r i t y . a c t i o n . L o a d L i b r a r y A c
 t i o n . r u n ( L o a d L i b r a r y A c t i o n . j a v a : 5 3 )
         a t   j a v a . s e c u r i t y . A c c e s s C o n t r o l l e r . d o
 P r i v i l e g e d ( N a t i v e   M e t h o d )
         a t   j a v a . u t i l . z i p . Z i p F i l e . < c l i n i t > ( Z i
 p F i l e . j a v a : 5 2 )
(Review ID: 109683) 
======================================================================


Comments
EVALUATION A fix (see RFE 4303460) was provided whereby the 7 locales in Windows 2000 for which there are no code pages defined were mapped to use UTF-16LE encoding. This appears to be correct but somehow when the default encoding on Win32 is one of the Unicode encodings (UTF-16, UTF-16LE,etc) the system properties are not being correctly read by System.getProperties(). It would appear that there is some (as yet unexplained) dependency on the reading of the system properties and the default character encoding which shows up within encodings which are not compatible with US-ASCII or ISO8859_1. More investigation and debugging will be done to determine where this unexpected dependency is stemming from. Ian.Little@Ireland 2/5/2001
05-02-2001