You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Sergey Salishev (JIRA)" <ji...@apache.org> on 2007/06/05 12:21:26 UTC
[jira] Created: (HARMONY-4043) [classlib][luni]Unexpected error
message printed in console when searching custom system class loader in
missing jar
[classlib][luni]Unexpected error message printed in console when searching custom system class loader in missing jar
--------------------------------------------------------------------------------------------------------------------
Key: HARMONY-4043
URL: https://issues.apache.org/jira/browse/HARMONY-4043
Project: Harmony
Issue Type: Bug
Components: Classlib
Reporter: Sergey Salishev
Priority: Minor
When running drlvm the following command line:
java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
the following exception is printed in console:
java.lang.IllegalStateException: Recursive invocation while initializing system class loader
at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:667)
at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
at org.apache.harmony.luni.util.MsgHelp$1.run(MsgHelp.java:115)
at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
at java.security.AccessController.doPrivileged(AccessController.java:53)
at org.apache.harmony.luni.util.MsgHelp.setLocale(MsgHelp.java:112)
at org.apache.harmony.luni.util.Msg.<clinit>(Msg.java:49)
at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:196)
at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:161)
at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:178)
at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1078)
at java.net.URLClassLoader$4.run(URLClassLoader.java:625)
at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
at java.security.AccessController.doPrivileged(AccessController.java:64)
at java.net.URLClassLoader.findClass(URLClassLoader.java:627)
at java.lang.ClassLoader.loadClass(ClassLoader.java:570)
at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:958)
at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:699)
at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
Here dummy.jar is noexistent and ClassLoader is any custom class loader class.
If ClassLoader also doesn't exist the VM crashes with this command line. But the error message is peinted anyway.
If the class loader class exists the execution continues as expected.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-4043) [classlib][luni]Unexpected error
message printed in console when searching custom system class loader in
missing jar
Posted by "Pavel Pervov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4043?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12506142 ]
Pavel Pervov commented on HARMONY-4043:
---------------------------------------
Hm... It looks like HDK issue!
I use VM build and I only see second part of the message starting from "** During system class loader initialization uncaught exception: java/lang/Error ", which is predictable.
> [classlib][luni]Unexpected error message printed in console when searching custom system class loader in missing jar
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4043
> URL: https://issues.apache.org/jira/browse/HARMONY-4043
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Sergey Salishev
> Priority: Minor
>
> When running drlvm the following command line:
> java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
> the following exception is printed in console:
> java.lang.IllegalStateException: Recursive invocation while initializing system class loader
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:667)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> at org.apache.harmony.luni.util.MsgHelp$1.run(MsgHelp.java:115)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:53)
> at org.apache.harmony.luni.util.MsgHelp.setLocale(MsgHelp.java:112)
> at org.apache.harmony.luni.util.Msg.<clinit>(Msg.java:49)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:196)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:161)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:178)
> at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1078)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:625)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:64)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:627)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:570)
> at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:958)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:699)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> Here dummy.jar is noexistent and ClassLoader is any custom class loader class.
> If ClassLoader also doesn't exist the VM crashes with this command line. But the error message is peinted anyway.
> If the class loader class exists the execution continues as expected.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-4043) [classlib][luni]Unexpected error
message printed in console when searching custom system class loader in
missing jar
Posted by "Pavel Pervov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4043?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12506115 ]
Pavel Pervov commented on HARMONY-4043:
---------------------------------------
I could not reproduce it on the current source tree. Please, recheck.
> [classlib][luni]Unexpected error message printed in console when searching custom system class loader in missing jar
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4043
> URL: https://issues.apache.org/jira/browse/HARMONY-4043
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Sergey Salishev
> Priority: Minor
>
> When running drlvm the following command line:
> java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
> the following exception is printed in console:
> java.lang.IllegalStateException: Recursive invocation while initializing system class loader
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:667)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> at org.apache.harmony.luni.util.MsgHelp$1.run(MsgHelp.java:115)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:53)
> at org.apache.harmony.luni.util.MsgHelp.setLocale(MsgHelp.java:112)
> at org.apache.harmony.luni.util.Msg.<clinit>(Msg.java:49)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:196)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:161)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:178)
> at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1078)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:625)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:64)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:627)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:570)
> at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:958)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:699)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> Here dummy.jar is noexistent and ClassLoader is any custom class loader class.
> If ClassLoader also doesn't exist the VM crashes with this command line. But the error message is peinted anyway.
> If the class loader class exists the execution continues as expected.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-4043) [classlib][luni]Unexpected error
message printed in console when searching custom system class loader in
missing jar
Posted by "Sergey Salishev (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4043?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12506130 ]
Sergey Salishev commented on HARMONY-4043:
------------------------------------------
The crash is gone. But I still can reproduce the error message on harmony-hdk-r547495 snapshot:
C:\drl_builds\harmony-hdk-r547495\jdk\jre\bin>java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
java.lang.IllegalStateException: Recursive invocation while initializing system class loader
at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:672)
at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:161)
at org.apache.harmony.archive.internal.nls.Messages$1.run(Messages.java:227)
at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
at java.security.AccessController.doPrivileged(AccessController.java:53)
at org.apache.harmony.archive.internal.nls.Messages.setLocale(Messages.java:224)
at org.apache.harmony.archive.internal.nls.Messages.<clinit>(Messages.java:239)
at java.util.zip.ZipFile.openZip(ZipFile.java:120)
at java.util.zip.ZipFile.<init>(ZipFile.java:94)
at java.util.jar.JarFile.<init>(JarFile.java:172)
at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.openJarFile(JarURLConnection.java:145)
at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:121)
at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:87)
at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:104)
at java.net.URLClassLoader.createURLJarHandler(URLClassLoader.java:1041)
at java.net.URLClassLoader.makeNewHandler(URLClassLoader.java:998)
at java.net.URLClassLoader.getHandler(URLClassLoader.java:981)
at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1190)
at java.net.URLClassLoader$4.run(URLClassLoader.java:889)
at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
at java.security.AccessController.doPrivileged(AccessController.java:64)
at java.net.URLClassLoader.findClass(URLClassLoader.java:891)
at java.lang.ClassLoader.loadClass(ClassLoader.java:575)
at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:963)
at java.lang.ClassLoader.loadClass(ClassLoader.java:319)
at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:704)
at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:161)
Failed to initialize system class loader.
** During system class loader initialization uncaught exception: java/lang/Error
java/lang/Error : java.lang.ClassNotFoundException: ClassLoader
at java.lang.ClassLoader.initSystemClassLoader (ClassLoader.java: 719)
at java.lang.ClassLoader.getSystemClassLoader (ClassLoader.java: 161)
caused by
java/lang/ClassNotFoundException : ClassLoader
at java.net.URLClassLoader.findClass (URLClassLoader.java: 895)
at java.lang.ClassLoader.loadClass (ClassLoader.java: 575)
at java.lang.ClassLoader$SystemClassLoader.loadClass (ClassLoader.java: 963)
at java.lang.ClassLoader.loadClass (ClassLoader.java: 319)
at java.lang.ClassLoader.initSystemClassLoader (ClassLoader.java: 704)
at java.lang.ClassLoader.getSystemClassLoader (ClassLoader.java: 161)
HMYEXEL062E Internal VM error: Failed to create Java VM
FAILED to invoke JVM.
> [classlib][luni]Unexpected error message printed in console when searching custom system class loader in missing jar
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4043
> URL: https://issues.apache.org/jira/browse/HARMONY-4043
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Sergey Salishev
> Priority: Minor
>
> When running drlvm the following command line:
> java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
> the following exception is printed in console:
> java.lang.IllegalStateException: Recursive invocation while initializing system class loader
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:667)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> at org.apache.harmony.luni.util.MsgHelp$1.run(MsgHelp.java:115)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:53)
> at org.apache.harmony.luni.util.MsgHelp.setLocale(MsgHelp.java:112)
> at org.apache.harmony.luni.util.Msg.<clinit>(Msg.java:49)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:196)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:161)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:178)
> at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1078)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:625)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:64)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:627)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:570)
> at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:958)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:699)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> Here dummy.jar is noexistent and ClassLoader is any custom class loader class.
> If ClassLoader also doesn't exist the VM crashes with this command line. But the error message is peinted anyway.
> If the class loader class exists the execution continues as expected.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-4043) [classlib][luni]Unexpected error
message printed in console when searching custom system class loader in
missing jar
Posted by "Mikhail Markov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4043?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12506561 ]
Mikhail Markov commented on HARMONY-4043:
-----------------------------------------
To be clear - the same stack trace as Sergey.
> [classlib][luni]Unexpected error message printed in console when searching custom system class loader in missing jar
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4043
> URL: https://issues.apache.org/jira/browse/HARMONY-4043
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Sergey Salishev
> Priority: Minor
>
> When running drlvm the following command line:
> java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
> the following exception is printed in console:
> java.lang.IllegalStateException: Recursive invocation while initializing system class loader
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:667)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> at org.apache.harmony.luni.util.MsgHelp$1.run(MsgHelp.java:115)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:53)
> at org.apache.harmony.luni.util.MsgHelp.setLocale(MsgHelp.java:112)
> at org.apache.harmony.luni.util.Msg.<clinit>(Msg.java:49)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:196)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:161)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:178)
> at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1078)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:625)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:64)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:627)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:570)
> at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:958)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:699)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> Here dummy.jar is noexistent and ClassLoader is any custom class loader class.
> If ClassLoader also doesn't exist the VM crashes with this command line. But the error message is peinted anyway.
> If the class loader class exists the execution continues as expected.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-4043) [classlib][luni]Unexpected error
message printed in console when searching custom system class loader in
missing jar
Posted by "Mikhail Markov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4043?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12506560 ]
Mikhail Markov commented on HARMONY-4043:
-----------------------------------------
I've just run the mentioned line on WinXP, DRLVM debug build and got the same stack trace (no crash).
So this is not HDK issue :-).
> [classlib][luni]Unexpected error message printed in console when searching custom system class loader in missing jar
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4043
> URL: https://issues.apache.org/jira/browse/HARMONY-4043
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Sergey Salishev
> Priority: Minor
>
> When running drlvm the following command line:
> java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
> the following exception is printed in console:
> java.lang.IllegalStateException: Recursive invocation while initializing system class loader
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:667)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> at org.apache.harmony.luni.util.MsgHelp$1.run(MsgHelp.java:115)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:53)
> at org.apache.harmony.luni.util.MsgHelp.setLocale(MsgHelp.java:112)
> at org.apache.harmony.luni.util.Msg.<clinit>(Msg.java:49)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:196)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:161)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:178)
> at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1078)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:625)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:64)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:627)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:570)
> at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:958)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:699)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> Here dummy.jar is noexistent and ClassLoader is any custom class loader class.
> If ClassLoader also doesn't exist the VM crashes with this command line. But the error message is peinted anyway.
> If the class loader class exists the execution continues as expected.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-4043) [classlib][luni]Unexpected error
message printed in console when searching custom system class loader in
missing jar
Posted by "Pavel Pervov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4043?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12528279 ]
Pavel Pervov commented on HARMONY-4043:
---------------------------------------
I can't see my evaluation - comment is missing somehow. I reproduce it once more not to lose the info.
------------------------------------------------------------------------------------------------------------------
The problem is in org.apache.harmony.<module>.internal.nls.Messages.java classes which have the same construct in their setLocale methods:
------------------------------
final ClassLoader loader = VM.bootCallerClassLoader();
return (ResourceBundle) AccessController
.doPrivileged(new PrivilegedAction<Object>() {
public Object run() {
return ResourceBundle.getBundle(resource, locale,
loader != null ? loader : ClassLoader.getSystemClassLoader());
}
});
------------------------------
As DRLVM do not have java object for bootstrap class loader, VM.bootCallerClassLoader() returns null and a call to ClassLoader.getSystemClassLoader() is being made. Semantically, these two are different calls and return different class loaders with different available classes.
I couldn't construct the way to force ResourceBundle to get bundle from bootstrap class loader - this is what required in the context of this method.
------------------------------------------------------------------------------------------------------------------
> [classlib][luni]Unexpected error message printed in console when searching custom system class loader in missing jar
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4043
> URL: https://issues.apache.org/jira/browse/HARMONY-4043
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Sergey Salishev
> Priority: Minor
>
> When running drlvm the following command line:
> java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
> the following exception is printed in console:
> java.lang.IllegalStateException: Recursive invocation while initializing system class loader
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:667)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> at org.apache.harmony.luni.util.MsgHelp$1.run(MsgHelp.java:115)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:53)
> at org.apache.harmony.luni.util.MsgHelp.setLocale(MsgHelp.java:112)
> at org.apache.harmony.luni.util.Msg.<clinit>(Msg.java:49)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:196)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:161)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:178)
> at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1078)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:625)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:64)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:627)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:570)
> at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:958)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:699)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> Here dummy.jar is noexistent and ClassLoader is any custom class loader class.
> If ClassLoader also doesn't exist the VM crashes with this command line. But the error message is peinted anyway.
> If the class loader class exists the execution continues as expected.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-4043) [classlib][luni]Unexpected error
message printed in console when searching custom system class loader in
missing jar
Posted by "Mikhail Fursov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4043?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mikhail Fursov updated HARMONY-4043:
------------------------------------
Component/s: (was: Classlib)
DRLVM
> [classlib][luni]Unexpected error message printed in console when searching custom system class loader in missing jar
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4043
> URL: https://issues.apache.org/jira/browse/HARMONY-4043
> Project: Harmony
> Issue Type: Bug
> Components: DRLVM
> Reporter: Sergey Salishev
> Priority: Minor
>
> When running drlvm the following command line:
> java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
> the following exception is printed in console:
> java.lang.IllegalStateException: Recursive invocation while initializing system class loader
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:667)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> at org.apache.harmony.luni.util.MsgHelp$1.run(MsgHelp.java:115)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:53)
> at org.apache.harmony.luni.util.MsgHelp.setLocale(MsgHelp.java:112)
> at org.apache.harmony.luni.util.Msg.<clinit>(Msg.java:49)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:196)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:161)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:178)
> at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1078)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:625)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:64)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:627)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:570)
> at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:958)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:699)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> Here dummy.jar is noexistent and ClassLoader is any custom class loader class.
> If ClassLoader also doesn't exist the VM crashes with this command line. But the error message is peinted anyway.
> If the class loader class exists the execution continues as expected.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Commented: (HARMONY-4043) [classlib][luni]Unexpected error
message printed in console when searching custom system class loader in
missing jar
Posted by "Pavel Pervov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4043?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12513548 ]
Pavel Pervov commented on HARMONY-4043:
---------------------------------------
The problem is in org.apache.harmony.<module>.internal.nls.Messages.java classes which have the same construct in their setLocale methods:
------------------------------
final ClassLoader loader = VM.bootCallerClassLoader();
return (ResourceBundle) AccessController
.doPrivileged(new PrivilegedAction<Object>() {
public Object run() {
return ResourceBundle.getBundle(resource, locale,
loader != null ? loader : ClassLoader.getSystemClassLoader());
}
});
------------------------------
As DRLVM do not have java object for bootstrap class loader, VM.bootCallerClassLoader() returns null and a call to ClassLoader.getSystemClassLoader() is being made. Semantically, these two are different calls and return different class loaders with different available classes.
I couldn't construct the way to force ResourceBundle to get bundle from bootstrap class loader - this is what required in the context of this method.
> [classlib][luni]Unexpected error message printed in console when searching custom system class loader in missing jar
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4043
> URL: https://issues.apache.org/jira/browse/HARMONY-4043
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Sergey Salishev
> Priority: Minor
>
> When running drlvm the following command line:
> java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
> the following exception is printed in console:
> java.lang.IllegalStateException: Recursive invocation while initializing system class loader
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:667)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> at org.apache.harmony.luni.util.MsgHelp$1.run(MsgHelp.java:115)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:53)
> at org.apache.harmony.luni.util.MsgHelp.setLocale(MsgHelp.java:112)
> at org.apache.harmony.luni.util.Msg.<clinit>(Msg.java:49)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:196)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:161)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:178)
> at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1078)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:625)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:64)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:627)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:570)
> at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:958)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:699)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> Here dummy.jar is noexistent and ClassLoader is any custom class loader class.
> If ClassLoader also doesn't exist the VM crashes with this command line. But the error message is peinted anyway.
> If the class loader class exists the execution continues as expected.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
[jira] Updated: (HARMONY-4043) [classlib][luni]Unexpected error
message printed in console when searching custom system class loader in
missing jar
Posted by "Mikhail Fursov (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/jira/browse/HARMONY-4043?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Mikhail Fursov updated HARMONY-4043:
------------------------------------
Component/s: (was: DRLVM)
Classlib
> [classlib][luni]Unexpected error message printed in console when searching custom system class loader in missing jar
> --------------------------------------------------------------------------------------------------------------------
>
> Key: HARMONY-4043
> URL: https://issues.apache.org/jira/browse/HARMONY-4043
> Project: Harmony
> Issue Type: Bug
> Components: Classlib
> Reporter: Sergey Salishev
> Priority: Minor
>
> When running drlvm the following command line:
> java -classpath dummy.jar;. -Djava.system.class.loader=ClassLoader bla
> the following exception is printed in console:
> java.lang.IllegalStateException: Recursive invocation while initializing system class loader
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:667)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> at org.apache.harmony.luni.util.MsgHelp$1.run(MsgHelp.java:115)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:53)
> at org.apache.harmony.luni.util.MsgHelp.setLocale(MsgHelp.java:112)
> at org.apache.harmony.luni.util.Msg.<clinit>(Msg.java:49)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.findJarFile(JarURLConnection.java:196)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:161)
> at org.apache.harmony.luni.internal.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:178)
> at java.net.URLClassLoader.findClassImpl(URLClassLoader.java:1078)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:625)
> at java.net.URLClassLoader$4.run(URLClassLoader.java:1)
> at java.security.AccessController.doPrivilegedImpl(AccessController.java:171)
> at java.security.AccessController.doPrivileged(AccessController.java:64)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:627)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:570)
> at java.lang.ClassLoader$SystemClassLoader.loadClass(ClassLoader.java:958)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:317)
> at java.lang.ClassLoader.initSystemClassLoader(ClassLoader.java:699)
> at java.lang.ClassLoader.getSystemClassLoader(ClassLoader.java:159)
> Here dummy.jar is noexistent and ClassLoader is any custom class loader class.
> If ClassLoader also doesn't exist the VM crashes with this command line. But the error message is peinted anyway.
> If the class loader class exists the execution continues as expected.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.