Oracle JDBC problem

The oracle server that I'm using is
Oracle9i Enterprise Edition Release 9.2.0.4.0 - 64bit Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.4.0 - Production

I downloaded the driver for Oracle JDBC from Oracle website, and also set the path as shown in the picture. Then I created a Java file, and COMPILED it, and I got the following error message

Oracle.java:9: cannot find symbol
symbol  : class OracleDriver
location: class Oracle
                        DriverManager.registerDriver(new OracleDriver());
                                                         ^
1 error


How to fix it?

import java.sql.*;
 
public class Oracle{
 
	Connection conn = null;
 
	public static void main(String [] args){
		try {
			DriverManager.registerDriver(new OracleDriver());
		} catch (Exception e) { 
			System.out.println("ERROR : " + e);
			e.printStackTrace(System.out);
		}
	}
}

Open in new window

path.JPG
mawinghoAsked:
Who is Participating?
 
Kevin CrossConnect With a Mentor Chief Technology OfficerCommented:
Here is a discussion on the same issue:

http://forums.oracle.com/forums/thread.jspa?threadID=426544 

My thoughts/questions would be:
+Have you rebooted since adding oracle JAR to your classpath?
+Do you have oracle JAR included in the build path of your project within IDE you are using to code?
+Do you have import statement that is not showing in code snippet, as the correct class name for the oracle driver is oracle.jdbc.OracleDriver()?

HTH
/kev
0
 
priya_patilConnect With a Mentor Commented:
where is the OracleDriver class in
DriverManager.registerDriver(new OracleDriver())

you can directly write
DriverManager.registerDriver("oracle.jdbc.driver.OracleDriver");
0
 
mawinghoAuthor Commented:
still doesn't work...

C:\Documents and Settings\msp064646\My Documents\Development>javac *.java
Test.java:9: registerDriver(java.sql.Driver) in java.sql.DriverManager cannot be
 applied to (java.lang.String)
                        DriverManager.registerDriver("oracle.jdbc.driver.OracleD
river");
                                     ^
1 error

C:\Documents and Settings\msp064646\My Documents\Development>
0
Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

 
priya_patilConnect With a Mentor Commented:
write to register driver

DriverManager.registerDriver((java.sql.Driver)(Class.forName("oracle.jdbc.driver.OracleD
river").newInstance()));
0
 
mawinghoAuthor Commented:
When I execute it, I got the following errors, is it becoz the path or classpath doesn't work?

C:\Documents and Settings\msp064646\My Documents\Development>javac *.java

C:\Documents and Settings\msp064646\My Documents\Development>java Test
ERROR : java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
        at java.net.URLClassLoader$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClassInternal(Unknown Source)
        at java.lang.Class.forName0(Native Method)
        at java.lang.Class.forName(Unknown Source)
        at Test.main(Test.java:9)

C:\Documents and Settings\msp064646\My Documents\Development>
0
 
priya_patilConnect With a Mentor Commented:
yes this is because the jar file is not there in class path
add it to
environment variables -> system variable -> class path -> path to oracle driver jar file (must be ojdbc.. .jar)
close command prompt
open a new command prompt after setting value from environment variables (my computer -> properties -> advanced )
compile it and run it
0
 
Kevin CrossConnect With a Mentor Chief Technology OfficerCommented:
Please follow-up on my comment above - http:#22647122.
Please take a look at the link and answer three questions and post back if that doesn't resolve issue.
0
 
Ajay-SinghConnect With a Mentor Commented:
Once you set the classpath on the system property, You need to create a new command window, to conform the changes
has taken effect, you should type:

echo %CLASSPATH%
0
 
mawinghoAuthor Commented:
C:\Documents and Settings\msp064646>echo %CLASSPATH%
%CLASSPATH%
0
 
Kevin CrossConnect With a Mentor Chief Technology OfficerCommented:
lol. that is funny! unless that is seriously what you got back, then that means you have something wrong as you should get back your classpath like you see in environment variables.

echo %PATH%
echo %CLASSPATH%

Responses should not be %PATH% and %CLASSPATH%, should be string of file paths separated by semi-colons (;).
0
 
mawinghoAuthor Commented:
There is no CLASSPATH in my system variable

C:\Documents and Settings\msp064646>echo %PATH%
.;C:\Program Files\Java\jdk1.6.0_07\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;E:\Ora920_w2k\bin;e:\orant\bin;C:\Program Files\Oracle
\jre\1.1.8\bin;f:\tools;C:\oracle\BIToolsHome_1\bin;C:\oracle\BIToolsHome_1\jlib;C:\oracle\BIToolsHome_1\jre\1.4.2\bin\client;C:\oracle\BIToolsHome_1\
jre\1.4.2\bin;C:\Program Files\Windows Imaging\;C:\ojdbc14.jar;E:\Ora920_w2k\jdbc\lib\;

C:\Documents and Settings\msp064646>echo %CLASSPATH%
%CLASSPATH%

C:\Documents and Settings\msp064646>

0
 
Kevin CrossConnect With a Mentor Chief Technology OfficerCommented:
Try :

javac -cp .;C:\ojdbc14.jar Oracle.java
0
 
mawinghoAuthor Commented:
my code called Test.java is attached below

C:\Documents and Settings\msp064646\My Documents\Development>javac -cp .;C:\ojdbc14.jar Test.java

C:\Documents and Settings\msp064646\My Documents\Development>java -cp .;C:\ojdbc14.jar Test

C:\Documents and Settings\msp064646\My Documents\Development>
Note from modus_operandi, EE Moderator
Connection parameters expunged
 
 
 
import java.sql.*;
 
public class Test{
 
	/*Connection conn = null;*/
 
	public static void main(String [] args){
		
		
		try {
			//DriverManager.registerDriver((java.sql.Driver)(Class.forName("oracle.jdbc.driver.OracleDriver").newInstance()));
			//DriverManager.registerDriver("oracle.jdbc.driver.OracleDriver");
			Class.forName("oracle.jdbc.driver.OracleDriver");
			//DriverManager.registerDriver (new oracle.jdbc.OracleDriver());
			//Connection con = DriverManager.getConnection(<connection parameters>);
		} catch (Exception e) { 
			System.out.println("ERROR : " + e);
			e.printStackTrace(System.out);
		}
		
	}
}

Open in new window

0
 
Kevin CrossConnect With a Mentor Chief Technology OfficerCommented:
Are you getting an error now?  I would test with your original code.
import java.sql.*;
 
public class Test {
 
	//Connection conn = null;
 
	public static void main(String [] args){
		try {
			DriverManager.registerDriver(new oracle.jdbc.OracleDriver());
		} catch (Exception e) { 
			System.out.println("ERROR : " + e);
			e.printStackTrace(System.out);
		}
	}
}

Open in new window

0
All Courses

From novice to tech pro — start learning today.