I am using classes12.jar that came with Oracle 9i 9.2.0.1 and JBoss 3.0.1rc1. This occurs when reading back in the HashMap in the BLOB. I've seen a few messages on mailing lists about this supposedly being fixed in 3.0 but apparently it is not.
Brian Macy
2002-08-16 20:41:18,068 DEBUG [org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.com/pany/AlertSource] Executing SQL: SELECT disabled, owner, startAttempt, endAttempt, lastSuccess, config, type, className, name, alertGroup FROM ALERTSOURCE WHERE (id=?)
2002-08-16 20:41:18,078 ERROR [org.jboss.ejb.plugins.LogInterceptor] TransactionRolledbackException, causedBy:
java.sql.SQLException: Unable to load to deserialize result: java.io.StreamCorruptedException: invalid stream header
at org.jboss.ejb.plugins.cmp.jdbc.JDBCUtil.convertByteArrayToObject(JDBCUtil.java:603)
at org.jboss.ejb.plugins.cmp.jdbc.JDBCUtil.getResult(JDBCUtil.java:310)
at org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadArgumentResults(JDBCAbstractCMPFieldBridge.java:350)
at org.jboss.ejb.plugins.cmp.jdbc.bridge.JDBCAbstractCMPFieldBridge.loadInstanceResults(JDBCAbstractCMPFieldBridge.java:304)
at org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.execute(JDBCLoadEntityCommand.java:142)
at org.jboss.ejb.plugins.cmp.jdbc.JDBCLoadEntityCommand.execute(JDBCLoadEntityCommand.java:62)
at org.jboss.ejb.plugins.cmp.jdbc.JDBCStoreManager.loadEntity(JDBCStoreManager.java:572)
at org.jboss.ejb.plugins.CMPPersistenceManager.loadEntity(CMPPersistenceManager.java:410)
SQL> describe alertsource;
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NOT NULL NUMBER(10)
DISABLED NOT NULL NUMBER(1)
OWNER VARCHAR2(1024)
STARTATTEMPT NUMBER(19)
ENDATTEMPT NUMBER(19)
LASTSUCCESS NUMBER(19)
CONFIG BLOB
TYPE NOT NULL NUMBER(10)
CLASSNAME VARCHAR2(1024)
NAME VARCHAR2(1024)
ALERTGROUP NUMBER(10)