Whilst looking into a problem I have tried using the latest Oracle 9.2 driver (the 126.96.36.199 version of ojdbc14.jar).
When running this it gave a java.sql.SQLException : invalid conversion.
Doing a trace showed that a numeric type was being used instead of an integer.
The solution to this was to re-instate the SMALLINT jdbc type in the standardjbosscmp-jdbc.xml i.e. change -
<mapping> <java-type>java.lang.Short</java-type> <jdbc-type>NUMERIC</jdbc-type> <!-- <jdbc-type>SMALLINT</jdbc-type> this resulted in a ClassCastException --> <sql-type>NUMBER(5)</sql-type> </mapping>
<mapping> <java-type>java.lang.Short</java-type> <jdbc-type>SMALLINT</jdbc-type> <sql-type>NUMBER(5)</sql-type> </mapping>
Your question belongs in the persistence forum
or as a feature request on JIRA.