Link to home
Start Free TrialLog in
Avatar of rayskelton
rayskelton

asked on

NoNoClassDefFoundError: oracle/security/o3logon/O3LoginClientHelper

The following error occured attempting to connect with Oracle 8.1.7 and driver classes12_g.zip with Java 1.4.2.  Is the driver compatable with 8.1.7 and 1.4.2? What could be the problem?
----------------------------------------------------------
Loading Database Driver..........
Connecting to Database:RM2000 Development using Oracle i2d2 at port:1531
Connect String:jdbc:oracle:thin:@123.21.148.115:1531:m2d2
Exception in thread "main" java.lang.NoClassDefFoundError: oracle/security/o3logon/O3LoginClientHelper
     at oracle.jdbc.ttc7.O3log.<init>(O3log.java:262)
     at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:249)
     at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:265)
     at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:365)
     at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:260)
     at java.sql.DriverManager.getConnection(DriverManager.java:512)
     at java.sql.DriverManager.getConnection(DriverManager.java:171)
     at DatabaseUtil.getDbConnect(DatabaseUtil.java:153)
     at DatabaseUtil.<init>(DatabaseUtil.java:67)
     at DatabaseUtil.main(DatabaseUtil.java:443)
-------------------------------------------------------
Code Snippet
-----------------
public int getDbConnect()

{

   // set class members with configuration

   // information read from the properties file

   host          = System.getProperty("host");

   userName      = System.getProperty("user");

   url           = System.getProperty("url");

   passWord      = System.getProperty("password");

   port          = System.getProperty("port");

   sid           = System.getProperty("sid");

   databaseName  = System.getProperty("databaseName");

   maxSelectRows = System.getProperty("maxSelectRows");



   // Determine which system we are on

   // the MySql driver is for Linux *

   // Oracle this is for Oracle Driver

   String connectString = null;  

   if(url.compareTo("jdbc:mysql//") == 0)

     {// MySql Database

     connectString = url + host + ":"

                                + port + "/" + sid

                                + "?user=" + userName

                                + "&password=" + passWord;

     }

   else

     if(url.compareTo("jdbc:oracle:thin:@") == 0)

       {// Oracle Database

       

//       connectString =  url + host + ":" + port + ":" + sid+

//                        ", " +  userName +", " + passWord;

       connectString =  url + host + ":" + port + ":" + sid;



       }

   else

     System.out.println("Unsupported URL for this application:" + url);                                



   try

     {

     System.out.println("Connecting to Database:" + databaseName

                         + " " + sid + " at port:"+ port);

     System.out.println("Connect String:" + connectString);



     connection = DriverManager.getConnection(connectString, userName, passWord);

     System.out.println("Connection established for:" + databaseName);

     connection.setAutoCommit(false);

     }


SOLUTION
Avatar of CEHJ
CEHJ
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Worth renaming it to classes12_g.jar anyway to see what happens. Make sure it's in your classpath or in all jre/lib/ext
> Worth renaming it to classes12_g.jar anyway to see what happens

Not necessary.
It certainly would be if he's put it into the extensions directory - it wouldn't work otherwise
:-)