+++ This bug was initially created as a clone of Bug #1032312 +++
Protocol versions up to 3 of the River marshalling protocol erroneously serialize a class descriptor for the first non-serializable superclass of a serializable class.
This manifests itself particularly when an IBM JVM and a Sun JVM communicate by serializing a StringBuilder or StringBuffer class. The Sun JDK contains a shared superclass called AbstractStringBuilder which is not present in IBM's version.
In version 4 the stream should be marked with a NULL when the first non-serializable class is hit. For version 3 though we can just mark it with java.lang.Object because that is also a single byte and should work as well (in 1.4 at least, this class is only used to detect the end of the chain; it is not used to make decisions about what constructor to invoke). Only the sender needs to change; the receiver should continue functioning.
--- Additional comment from Brad Maxwell on 2013-11-19 19:24:47 EST ---
Fixed in JBoss Marshalling 1.4.3
*** Bug 1052208 has been marked as a duplicate of this bug. ***
Setting to ON_QA since upgrade should fix this
Fixed by component upgrade, verified.
Changed <literal></literal> tags in Doc Text to ticks (`) to fix Bug 1096865
Fix release note text as reported by bug 1097163.