1

I have an EJB 2.1 based app, deployed in Weblogic 9.2 (Java 5) invoking a remote EJB 3 deployed in Weblogic 12 (Java 7). I've added the wlfullclient.jar to the classpath and it throws following exception:

Caused by: java.lang.NoSuchMethodError: weblogic.kernel.KernelStatus.isThinIIOPClient()Z
    at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.readObject(RemoteBusinessIntfProxy.java:185)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:946)
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1809)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
    at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1908)
    at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1832)
    at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1719)
    at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1305)
    at java.io.ObjectInputStream.readObject(ObjectInputStream.java:348)
    at weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:195)
    at weblogic.rjvm.MsgAbbrevInputStream.readObject(MsgAbbrevInputStream.java:565)
    at weblogic.utils.io.ChunkedObjectInputStream.readObject(ChunkedObjectInputStream.java:191)
    at weblogic.rmi.internal.ObjectIO.readObject(ObjectIO.java:62)
    at weblogic.rjvm.ResponseImpl.unmarshalReturn(ResponseImpl.java:221)
    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:338)
    at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:252)
    at weblogic.jndi.internal.ServerNamingNode_923_WLStub.lookup(Unknown Source)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:379)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:367)
    at javax.naming.InitialContext.lookup(InitialContext.java:351)

weblogic.kernel.KernelStatus exists in wlfullclient.jar and it has the isThinIIOPClient method, but the class exists in weblogic.jar too, and it hasn't that method. I 've tried with wlthint3client.jar and had the same error.

Could somebody please help me with any idea how to solve this?

ebo
  • 2,717
  • 1
  • 27
  • 22
Mauricio
  • 11
  • 3

1 Answers1

0

I think this problem can solve by remove same class in 2 or more jars, or your put wrong wlfullclient.jar into your project. You should try to remove that jar from your library.

This problem is solved by comment of Pierluigi Vernetto

"weblogic.kernel.KernelStatus is in many JAR files, such as $MIDDLEWARE_HOME/modules/com.bea.core.weblogic.workmanager_1.9.0.0.jar, wlclient.jar etc.

most likely in your classpath you are picking up the wrong one

it is a frustrating exercise to put together the good set of jars... don't give up... and remember that officially there is no way to sort the order by which the JARs are scanned for a given class, so if you have the same class in 2 jars, you are royally s****d"

wittakarn
  • 3,124
  • 1
  • 18
  • 31