[ 
https://issues.apache.org/jira/browse/GERONIMO-3142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

toby cabot updated GERONIMO-3142:
---------------------------------

    Attachment: j6-patch-classloader.txt

This bug appears to be caused by a change in the behavior of 
ClassLoader.loadClass().  It used to accept array syntax but the version in 1.6 
doesn't.  I trolled Sun's bug tracker and saw some comments to the effect that 
it was never considered to be a documented feature and didn't always work, but 
it always worked for me until Java 1.6.  Oh well.

In any case, a couple of the comments suggested using Class.forName() instead, 
so I tried that and it seems to work for 1.5 and 1.6.  Will probably work for 
1.4 also but I haven't tried it since I'm working on the trunk for now.  If 
anyone cares I can try the same fix on a branch.

For background, see:

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6446627 - Reading Serialized 
arrays of objects throws ClassNotFoundException - one of the comments suggests 
using the 3-argument Class.forName() instead.

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6516909 - Clarify that 
ClassLoader.loadClass() is not meant to be used for array classes

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6249970 - clarification 
needed: binary name of array type in ClassLoader.loadClass

http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4976356 - S1AS 7 calling 
ClassLoader.loadClass with array syntax 


> Geronimo / Jetty fails to startup under Sun Java 1.6 update 1
> -------------------------------------------------------------
>
>                 Key: GERONIMO-3142
>                 URL: https://issues.apache.org/jira/browse/GERONIMO-3142
>             Project: Geronimo
>          Issue Type: Bug
>      Security Level: public(Regular issues) 
>          Components: JVM-compatibility
>    Affects Versions: 1.1.1, 1.2
>         Environment: CentOS 5 (~RHEL 5), Java 1.6 update 1
>            Reporter: Nikla Ratinen
>         Attachments: geronimo.log, geronimo.out, j6-patch-classloader.txt
>
>
> Vanilla Geronimo / Jetty 1.1.1 and 1.2-beta fail to start under JDK 1.6 
> update 1. JDK 1.5 seems to work though.
> Logs show ClassNotFoundException resolving key manager:
> ...
> Caused by: java.lang.ClassNotFoundException: [Ljavax.net.ssl.KeyManager; in 
> classloader org.apache.geronimo.configs/jetty/1.2-beta/car
>         at 
> org.apache.geronimo.kernel.config.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:298)
>         at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
>         at 
> org.apache.geronimo.security.keystore.FileKeystoreManager.createSSLServerFactory(FileKeystoreManager.java:310)
>         ... 53 more
> An easy way to disable SSL entirely would fix this for me ;)
> I'll attach relevant logs.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to