KB Article #177493
java.io.InvalidClassException: com.axway.cluster.tokenmanager.TokenMessage; local class incompatible: stream classdesc serialVersionUID = -1, local class serialVersionUID = xxxxxxxxxxxxx
Problem
-- getting such error in Cn logs when starting Interchange
2015-10-09 13:24:14,962 - DEBUG [Cluster Thread 9] (MessageExecutor.run:52) -
java.io.InvalidClassException: com.axway.cluster.tokenmanager.TokenMessage; local class incompatible: stream classdesc serialVersionUID = -1, local class serialVersionUID = 3436659450512261630
at java.io.ObjectStreamClass.initNonProxy(Unknown Source)
at java.io.ObjectInputStream.readNonProxyDesc(Unknown Source)
at java.io.ObjectInputStream.readClassDesc(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.defaultReadFields(Unknown Source)
at java.io.ObjectInputStream.readSerialData(Unknown Source)
at java.io.ObjectInputStream.readOrdinaryObject(Unknown Source)
at java.io.ObjectInputStream.readObject0(Unknown Source)
at java.io.ObjectInputStream.readObject(Unknown Source)
at com.axway.cluster.bus.comm.MessageExecutor.run(MessageExecutor.java:41) at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) at java.lang.Thread.run(Unknown Source)
at com.axway.cluster.extensions.thread.EventedThread.primRun(EventedThread.java:102)
at com.axway.cluster.extensions.thread.EventedThread.run(EventedThread.java:80)
2015-10-09 13:24:14,962 - WARN [Cluster Thread 9] (MessageExecutor.run:56) - Shutting down connection to axwaydemo_b2b: com.axway.cluster.tokenmanager.TokenMessage; local class incompatible: stream classdesc serialVersionUID = -1, local class serialVersionUID = 3436659450512261630
Resolution
* there are probably 2 different ACF versions in Interchange/corelib
* Example :
C:/Axway/b2bi/Interchange/corelib/com.axway.cluster.api-1.3.7-SNAPSHOT.jar
C:/Axway/b2bi/Interchange/corelib/com.axway.cluster.executive-1.3.7-SNAPSHOT.jar
C:/Axway/b2bi/Interchange/corelib/com.axway.cluster.node-1.3.7-SNAPSHOT.jar
C:/Axway/b2bi/Interchange/corelib/interchange-framework-acf-api-1.4.0-1.jar
C:/Axway/b2bi/Interchange/corelib/interchange-framework-acf-executive-1.4.0-1.jar
C:/Axway/b2bi/Interchange/corelib/interchange-framework-acf-node-1.4.0-1.jar
* do a backup of all ACF jar files in a separate directory, and keep the latest version of the ACF
In that example, keep the 1.4.0-1 versions only, and restart Interchange