users@glassfish.java.net

Re: Problem running standalone Glassfish client as Eclipse plugin

From: <glassfish_at_javadesktop.org>
Date: Thu, 04 Feb 2010 05:59:07 PST

Hi Dominik,

thanks for the reply. I'm sorry to hear you couldn't make it work either.
As to your question, I have no idea how to change the classloader in Eclipse, not even for a single plugin. Actually I'm fairly sure there is no [b]proper[/b] way to do it. So what I did was to directly modify the DefaultClassloader in the org.eclipse.osgi plugin and start the RCP with this version.

The exception that I got then was:

org.jvnet.hk2.component.UnsatisfiedDepedencyException: Unsatisfied dependency exception : private org.glassfish.enterprise.iiop.api.GlassFishORBHelper org.glassfish.enterprise.iiop.api.ORBNamingProxy.orbHelper
        at org.jvnet.hk2.component.InjectionManager.inject(InjectionManager.java:102)
        at com.sun.hk2.component.AbstractWombImpl.inject(AbstractWombImpl.java:170)
        at com.sun.hk2.component.ConstructorWomb$1.run(ConstructorWomb.java:87)
        at java.security.AccessController.doPrivileged(Native Method)
        at com.sun.hk2.component.ConstructorWomb.initialize(ConstructorWomb.java:84)
        at com.sun.hk2.component.AbstractWombImpl.get(AbstractWombImpl.java:77)
        at com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:58)
        at com.sun.hk2.component.LazyInhabitant.get(LazyInhabitant.java:107)
        at com.sun.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:60)
        at org.jvnet.hk2.component.Habitat$1.get(Habitat.java:276)
        at java.util.AbstractList$Itr.next(AbstractList.java:345)
        at com.sun.enterprise.naming.impl.NamedNamingObjectManager.checkAndLoadProxies(NamedNamingObjectManager.java:68)
        at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:397)
        at javax.naming.InitialContext.lookup(InitialContext.java:392)
        at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

Caused by: org.jvnet.hk2.component.ComponentException: Failed to create class org.glassfish.enterprise.iiop.impl.GlassFishORBFactoryImpl
        at com.sun.hk2.component.ConstructorWomb.create(ConstructorWomb.java:74)
        at com.sun.hk2.component.AbstractWombImpl.get(AbstractWombImpl.java:71)
        at com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:58)
        at com.sun.hk2.component.LazyInhabitant.get(LazyInhabitant.java:107)
        at com.sun.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:60)
        at org.jvnet.hk2.component.Habitat.getByContract(Habitat.java:594)
        at org.glassfish.enterprise.iiop.api.GlassFishORBHelper.postConstruct(GlassFishORBHelper.java:88)
        at com.sun.hk2.component.AbstractWombImpl.inject(AbstractWombImpl.java:174)
        at com.sun.hk2.component.ConstructorWomb$1.run(ConstructorWomb.java:87)
        at java.security.AccessController.doPrivileged(Native Method)
        at com.sun.hk2.component.ConstructorWomb.initialize(ConstructorWomb.java:84)
        at com.sun.hk2.component.AbstractWombImpl.get(AbstractWombImpl.java:77)
        at com.sun.hk2.component.SingletonInhabitant.get(SingletonInhabitant.java:58)
        at com.sun.hk2.component.LazyInhabitant.get(LazyInhabitant.java:107)
        at com.sun.hk2.component.AbstractInhabitantImpl.get(AbstractInhabitantImpl.java:60)
        at org.jvnet.hk2.component.Habitat.getBy(Habitat.java:600)
        at org.jvnet.hk2.component.Habitat.getByType(Habitat.java:581)
        at com.sun.hk2.component.AbstractWombImpl$1.getValue(AbstractWombImpl.java:149)
        at org.jvnet.hk2.component.InjectionManager.inject(InjectionManager.java:81)
        ... 16 more

Caused by: java.lang.VerifyError: (class: org/glassfish/enterprise/iiop/impl/GlassFishORBFactoryImpl, method: createORB signature: (Ljava/util/Properties;)Lorg/omg/CORBA/ORB;) Wrong return type in function
        at java.lang.Class.getDeclaredConstructors0(Native Method)
        at java.lang.Class.privateGetDeclaredConstructors(Class.java:2389)
        at java.lang.Class.getConstructor0(Class.java:2699)
        at java.lang.Class.newInstance0(Class.java:326)
        at java.lang.Class.newInstance(Class.java:308)
        at com.sun.hk2.component.ConstructorWomb.create(ConstructorWomb.java:68)
        ... 34 more

Except for the NoSuchMethodException part it's pretty much the same as before.

Well, I guess I'm gonne take your advice and go back to Glassfish v2 until they work the kicks out in v3. The sad thing is I was counting on some nice EJB 3.1 features, but looks like that's gonne have to wait.

Stephan
[Message sent by forum member 'yetanotherone' (st.lerche_at_nexgo.de)]

http://forums.java.net/jive/thread.jspa?messageID=384775