JDK-6240665 : java.lang.IllegalStateException: recursive invocation using LANG=ja(japanese)
  • Type: Bug
  • Component: core-libs
  • Sub-Component: java.nio.charsets
  • Affected Version: 1.4.2_07
  • Priority: P2
  • Status: Closed
  • Resolution: Duplicate
  • OS: solaris_8
  • CPU: sparc
  • Submitted: 2005-03-15
  • Updated: 2010-04-02
  • Resolved: 2005-04-04
Related Reports
Duplicate :  
Relates :  
Relates :  
Description
java version "1.4.2_07"

Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_07-b05)

When locale is set to japanese we are getting this error.

Java HotSpot(TM) Client VM (build 1.4.2_07-b05, mixed mode)
*****Starting AppClassLoader*****Starting AppClassLoader
java.lang.IllegalStateException: recursive invocation
        at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:1139)
        at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:1122)
        at java.nio.charset.Charset$1.<init>(Charset.java:297)
        at java.nio.charset.Charset.providers(Charset.java:294)
        at java.nio.charset.Charset.access$000(Charset.java:245)
        at java.nio.charset.Charset$2.run(Charset.java:362)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.nio.charset.Charset.lookupViaProviders(Charset.java:359)
        at java.nio.charset.Charset.lookup2(Charset.java:437)
        at java.nio.charset.Charset.lookup(Charset.java:425)
        at java.nio.charset.Charset.isSupported(Charset.java:463)
        at java.lang.StringCoding.lookupCharset(StringCoding.java:82)
        at java.lang.StringCoding.decode(StringCoding.java:211)
        at java.lang.StringCoding.decode(StringCoding.java:230)
        at java.lang.String.<init>(String.java:371)
        at java.lang.String.<init>(String.java:390)
        at java.io.UnixFileSystem.canonicalize0(Native Method)
        at java.io.UnixFileSystem.canonicalize(UnixFileSystem.java:157)
        at java.io.File.getCanonicalPath(File.java:513)
        at java.io.File.getCanonicalFile(File.java:534)
        at sun.misc.Launcher.getFileURL(Launcher.java:389)
        at sun.misc.Launcher.pathToURLs(Launcher.java:332)
        at sun.misc.Launcher.access$300(Launcher.java:37)
        at sun.misc.Launcher$3.run(Launcher.java:319)
        at java.security.AccessController.doPrivileged(Native Method)
        at sun.misc.Launcher.getBootstrapClassPath(Launcher.java:316)
        at java.lang.ClassLoader.getBootstrapClassPath(ClassLoader.java:973)
        at java.lang.ClassLoader.getBootstrapResource(ClassLoader.java:948)
        at java.lang.ClassLoader.getResource(ClassLoader.java:810)
        at java.lang.ClassLoader.getResource(ClassLoader.java:808)
        at workshop.core.AppClassLoader.<init>(AppClassLoader.java:35)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
        at java.lang.reflect.Constructor.newInstance(Constructor.java:274)
        at java.lang.SystemClassLoaderAction.run(ClassLoader.java:1853)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:1147)
        at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:1122)
Error occurred during initialization of VM
java.lang.Error: java.lang.IllegalStateException: recursive invocation




###@###.### 2005-03-15 08:03:58 GMT

Comments
EVALUATION Looks like a dup of 6183734: FATAL ERROR occurs when jre executes with jar file without MANIFEST in 1.4.2 on Solaris8(LANG=ja) Thilak, please confirm. ###@###.### 2005-03-15 08:51:39 GMT The synopsis says the problem is with LANG=ja_JP, whereas the testcase instructs to test for LANG=hu_HU. This looks like a dup of 1) 5104480 - java.lang.IllegalStateException: recursive invocation using LANG=hu_HU.ISO8859-2, which got fixed in 1.4.2_07-b02. 2) 6196407 - J2SE NIO: eucJP-open failed to be looked up, which got fixed in 1.4.2_08-b01. See also 5080151 (dup of 6196407) (cs) 1.4.2_0X: IllegalStateException: recursive invocation on non-english locales The "IllegalStateException:recursive invocation" issue has been fixed. The "NoClassDefFoundError" issue is not a bug because: The test case uses the parent.getParent() as the parent class loader for delegation. This parent class loader (in this case is ExtClassLoader) will not use the -cp or -classpath or CLASSPATH classpath to search before loading a class. And hence would fail when the requested class is not found in lib/ext or -Xbootclasspath classpath. The test case can be corrected to work in one of the following ways: 1. Correct the parent class loader argument passed to super(). 2. Add the Test.class classpath to -Xbootclasspath or 3. Jar the Test.class in a jar file and drop it in jre/lib/ext/ folder. This bug can be closed. ###@###.### 2005-03-16 09:07:33 GMT ###@###.### 2005-04-02 20:06:40 GMT
15-03-2005