jboss-4.0.0DR2: local class incompatible
oscpro Aug 26, 2003 10:32 PMHi,
I have a very simple ejb jar file with a stateless session bean, its local and remote interfaces and its local and remote homes.
If I deploy the jar in jboss-4.0.0DR2 and try to get the remote home from a client using jndi I get instead the following exception:
Exception in thread "main" javax.naming.CommunicationException [Root exception is java.io.InvalidClassException: org.jboss.proxy.Interceptor;\ local class incompatible: stream classdesc serialVersionUID = 8774269974037850782,\ local class serialVersionUID = 4358098404672505200] at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:611) at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:471) at javax.naming.InitialContext.lookup(InitialContext.java:347) at org.xenata.aop.interfaces.PojoServiceUtil.getHome(PojoServiceUtil.java:24) at org.xenata.client.PojoClient.main(PojoClient.java:31) Caused by: java.io.InvalidClassException: org.jboss.proxy.Interceptor; local class incompatible: stream classdesc serialVersionUID = 8774269974037850782, local class serialVersionUID = 4358098404672505200 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.readNonProxyDesc(ObjectInputStream.java:1521) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1521) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1435) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1626) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:324) at org.jboss.proxy.ClientContainer.readExternal(ClientContainer.java:111) 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.defaultReadFields(ObjectInputStream.java:1845) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1769) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1646) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1274) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:324) at java.rmi.MarshalledObject.get(MarshalledObject.java:135) at org.jnp.interfaces.MarshalledValuePair.get(MarshalledValuePair.java:30) at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:514) ... 4 more
If the exact same ejb jar is deployed in jboss 3.2 and I use the same client it works fine.
Any idea why it doesn't work in 4.0?