Archive for November, 2009
Oracle OA Framework OracleCallableStatement error in EBS R12
We have been using jdeveloper 10g to create new OA Framework forms for our R12 Oracle EBS applications 12.0.6 with database version of 10.2.0.4 without issues.
We then upgraded our database to 11.1.0.7.0 and EBS to 12.1.1. That is when we encountered an issue with prior custom OA forms in EBS. oracle.apps.fnd.framework.OAException: oracle.jbo.JboException: JBO-29000: Unexpected exception caught: java.lang.IllegalAccessError, msg=oracle/jdbc/driver/OracleCallableStatement.
This issue/error is specifically related to the OracleCallableStatement used in 11g. With 11g certain features/libraries are not available. The Oracle Database 10g Release 2 (10.2) will be the last major release to offer the following feature/libraries: classes12.jar, oracle.jdbc.drivers.* and OracleConnectionCacheImpl. In other words these features/libraries will not be available in the next major database release (for example 11g).
Since our java code was using an OracleCallableStatement and also using the oracle.jdbc.drivers on the 11g database we encountered the error above. This means that public Oracle JDBC driver classes that were referenced by oracle.jdbc.driver package must be referenced by using the oracle.jdbc package . Therefore, Java programs must not import public classes that have belonged to the oracle.jdbc.driver package - but import those classes from the oracle.jdbc package.
Since our code was using “import oracle.jdbc.driver*” we had to replace it with import oracle.jdbc.*
Once we replaced the above statement; the OracleCallableStatement executed as expected.











