...
Caused by: java.lang.ClassCastException: javax.sql.rowset.serial.SerialBlob cannot be cast to oracle.sql.BLOB
at oracle.jdbc.driver.OraclePreparedStatement.setBlob(OraclePreparedStatement.java:6634)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.setBlob(OraclePreparedStatementWrapper.java:126)
The "infringing" code is this:
SerialBlob sb1 = new SerialBlob(value);
stmt.setBlob(5, sb1); //column 5 is a blob, in case you're wondering
Really, why not code against standards?
EDIT 8/5/2011 19:35: Issue worked around like so:
ByteArrayInputStream bais1 = new ByteArrayInputStream(value);
stmt.setBinaryStream(5, bais1, value.length);