Details
Description
After upgrading from Camel 2.6.0 to 2.8.0 we got a regression in one of our unit tests (I attached a simplified project which show the defect). This regression still exists in Camel 2.11-SNAPSHOT.
I think this regression was introduced by myself with the following commit:
commit 985928ab30b21711a41f2ec80808fd924eaaebf3 Author: Christian Mueller <cmueller@apache.org> Date: Mon Jun 20 22:19:31 2011 +0000 CAMEL-4120: camel-sql - JDBC aggregation repository - Should use ClassResolver from Camel to load classes git-svn-id: https://svn.apache.org/repos/asf/camel/trunk@1137802 13f79535-47bb-0310-9956-ffa450edef68
This is the exception I receive:
Caused by: java.io.StreamCorruptedException: invalid type code: 00 at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1355) at java.io.ObjectInputStream.readArray(ObjectInputStream.java:1641) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1322) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350) at java.lang.StringBuilder.readObject(StringBuilder.java:459) at sun.reflect.GeneratedMethodAccessor10.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at java.io.ObjectStreamClass.invokeReadObject(ObjectStreamClass.java:969) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1848) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1870) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328) at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1946) at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1870) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1752) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1328) at java.io.ObjectInputStream.readObject(ObjectInputStream.java:350) at org.apache.camel.processor.aggregate.jdbc.JdbcCamelCodec.decode(JdbcCamelCodec.java:80) at org.apache.camel.processor.aggregate.jdbc.JdbcCamelCodec.unmarshallExchange(JdbcCamelCodec.java:54) at org.apache.camel.processor.aggregate.jdbc.JdbcAggregationRepository$2.doInTransaction(JdbcAggregationRepository.java:174) ... 41 more
And as I said, everything works with Camel 2.6.0.