Bug #53488 Jar file installation in oracle database
Submitted: 7 May 2010 13:25 Modified: 11 May 2010 12:47
Reporter: sharmila k Email Updates:
Status: Not a Bug Impact on me:
None 
Category:Connector / J Severity:S2 (Serious)
Version:mysql-connector-java-5.1.12-bin.jar OS:Any
Assigned to: CPU Architecture:Any

[7 May 2010 13:25] sharmila k
Description:
I am trying to load the mysql-connector-java-5.1.12-bin.jar file in Oracle database, to run java stored procedure.  

Oracle version:

Oracle Database 10g Enterprise Edition Release 10.2.0.3.0 - 64bi
PL/SQL Release 10.2.0.3.0 

loadjava -user abc/abc@DEV -grant public -resolve mysql-connector-java-5.1.12-bin.jar

I am getting the following object error, please help me to fix it.

errors   : class com/mysql/jdbc/JDBC4CallableStatement
    ORA-29521: referenced name java/sql/RowId could not be found
    ORA-29521: referenced name java/sql/SQLXML could not be found
    ORA-29521: referenced name java/sql/NClob could not be found
errors   : class com/mysql/jdbc/JDBC4ClientInfoProvider
    ORA-29521: referenced name java/sql/SQLClientInfoException could not be found
errors   : class com/mysql/jdbc/JDBC4ClientInfoProviderSP
    ORA-29521: referenced name java/lang/StringBuilder could not be found
    ORA-29521: referenced name java/sql/SQLClientInfoException could not be found
errors   : class com/mysql/jdbc/JDBC4CommentClientInfoProvider
    ORA-29521: referenced name java/lang/StringBuilder could not be found
    ORA-29521: referenced name java/sql/SQLClientInfoException could not be found
..........
The following operations failed
    class com/mysql/jdbc/JDBC4CallableStatement: resolution
    class com/mysql/jdbc/JDBC4ClientInfoProvider: resolution
    class com/mysql/jdbc/JDBC4ClientInfoProviderSP: resolution
     class com/mysql/jdbc/exceptions/jdbc4/MySQLInvalidAuthorizationSpecException: resolution
    class com/mysql/jdbc/exceptions/jdbc4/MySQLNonTransientConnectionException: resolution
      class com/mysql/jdbc/exceptions/jdbc4/MySQLTransientConnectionException: resolution
    class com/mysql/jdbc/exceptions/jdbc4/MySQLTransientException: resolution
    class com/mysql/jdbc/integration/c3p0/MysqlConnectionTester: resolution
    class com/mysql/jdbc/integration/jboss/ExtendedMysqlExceptionSorter: resolution
    class com/mysql/jdbc/integration/jboss/MysqlValidConnectionChecker: resolution
    class com/mysql/jdbc/jdbc2/optional/JDBC4CallableStatementWrapper: resolution
    class com/mysql/jdbc/jdbc2/optional/JDBC4ConnectionWrapper: resolution
    class com/mysql/jdbc/jdbc2/optional/JDBC4MysqlPooledConnection: resolution
    class com/mysql/jdbc/jdbc2/optional/JDBC4MysqlXAConnection: resolution
      class com/mysql/jdbc/log/Log4JLogger: resolution
exiting  : Failures occurred during processing

How to repeat:

Load the Jar file to Oracle database using following command,

loadjava -user username/password@DEV -grant public -resolve mysql-connector-java-5.1.12-bin.jar

it throws errors...

Suggested fix:
 I tried to load all other jar files ant-contrib.jar,junit-3.8.2.jar,
log4j-12.9.jar,commons-logging.jar,c3p0-0.9.jar,jboss-common-jdbc-wrapper.jar
its not helping.
[7 May 2010 13:30] Tonci Grgin
Hi Sharmila and thanks for your report.

I do not get it at all... You are trying MySQL connector/J to connect to Oracle server? If so, that is simply not possible.
[7 May 2010 13:37] Tonci Grgin
Ah well, I got what you're trying to do...

Explanation: Our driver is not broken. You will  have to figure out how to turn the class verifier off, or remove those classes from the .jar if Oracle's not going to use them. Most likely this is a configuration error on your part.

However, we might consider making a package that only includes the driver and no JDBC-4.0 or integration stuff. But when, I can't tell.
[7 May 2010 13:40] Tonci Grgin
Sharmila, if you know anything in the oracle docs that will disable classloader verification we'll be interested to hear. As for your problem, I opened a separate bug report, Bug#53489.
[11 May 2010 12:47] sharmila k
Invalid objects created at the time of loading jar file to database.
we removed all those invalid objects from the database. Thanks.