Hi Folks,

I am making an RMI call to a remost host (Weblogic) and am getting the following nested exceptions

weblogic.rjvm.PeerGoneException: ; nested exception is: 
	java.rmi.UnmarshalException: Incoming message header or abbreviation processing failed ; nested exception is: 
	java.io.InvalidClassException: com.ic.framework.exceptions.ExceptionLevel; local class incompatible: stream classdesc serialVersionUID = 2325229144791754421, local class serialVersionUID = 8262877763253319801
	at weblogic.rjvm.BasicOutboundRequest.sendReceive(BasicOutboundRequest.java:108)
	at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:290)
	at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:248)
	at com.ic.mp.svcs.ejb.StorageEjbBean_rt8nh6_EOImpl_816_WLStub.storeDocs(Unknown Source)
	at com.ic.mp.svcs.ejb.Harness.DocumentLoad.run(DocumentLoad.java:300)
Caused by: java.rmi.UnmarshalException: Incoming message header or abbreviation processing failed ; nested exception is: 
	java.io.InvalidClassException: com.ic.framework.exceptions.ExceptionLevel; local class incompatible: stream classdesc serialVersionUID = 2325229144791754421, local class serialVersionUID = 8262877763253319801
	at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:769)
	at weblogic.rjvm.t3.T3JVMConnection.dispatch(T3JVMConnection.java:782)
	at weblogic.socket.SocketMuxer.readReadySocketOnce(SocketMuxer.java:718)
	at weblogic.socket.SocketMuxer.readReadySocket(SocketMuxer.java:654)
	at weblogic.socket.JavaSocketMuxer.processSockets(JavaSocketMuxer.java:282)
	at weblogic.socket.SocketReaderRequest.execute(SocketReaderRequest.java:32)
	at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:224)
	at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:183)
Caused by: java.io.InvalidClassException: com.ic.framework.exceptions.ExceptionLevel; local class incompatible: stream classdesc serialVersionUID = 2325229144791754421, local class serialVersionUID = 8262877763253319801
	at java.io.ObjectStreamClass.initNonProxy(ObjectStreamClass.java:463)
	at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1521)
	at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1264)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
	at weblogic.rjvm.ClassTableEntry.readExternal(ClassTableEntry.java:33)
	at java.io.ObjectInputStream.readExternalData(ObjectInputStream.java:1686)
	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1644)
	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274)
	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:324)
	at weblogic.rjvm.InboundMsgAbbrev.readObject(InboundMsgAbbrev.java:65)
	at weblogic.rjvm.InboundMsgAbbrev.read(InboundMsgAbbrev.java:37)
	at weblogic.rjvm.MsgAbbrevJVMConnection.readMsgAbbrevs(MsgAbbrevJVMConnection.java:212)
	at weblogic.rjvm.MsgAbbrevInputStream.readMessageContext(MsgAbbrevInputStream.java:251)
	at weblogic.rjvm.ConnectionManager.dispatch(ConnectionManager.java:748)

When I try to connect to remote host (A) using RMI call, it works fine, but when I try to connect to remost host (B) using RMI call, it gives me the above exception.

Can some one suggest...

Thanks.

Hello,

I was wondering if you found a solution a Iḿ getting a similar problem, i.e. unmarshal exception and invalidclassexception

thanks
S.

Hello,

I was wondering if you found a solution a Iḿ getting a similar problem, i.e. unmarshal exception and invalidclassexception

thanks
S.

you could start your own thread instead of just re-opening a thread that's been dead for almost a year

s_damry,

The problem was that the classes on the server was different than the classes on the client side.

You need to make sure to reference the same class (from the same built) in your client side.

That's all you need to do.

This article has been dead for over six months. Start a new discussion instead.