JDBC connection problem (UNIX)
438562Dec 15 2005 — edited Dec 21 2005Hello,
I am using JDBC bundled with Application Server 10g 9.0.4 to connect to a 10g database. I wrote a Java class to make a test connection, but it won't connect to the database. My testcode is as follows:
-----------------------------------
import oracle.jdbc.driver.*;
import oracle.sql.*;
import java.sql.*;
import java.io.*;
public class hello
{
public static void main(String[] args)
{
Connection conn = null;
try {
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
DriverManager.setLogWriter(new PrintWriter((System.out)));
} catch(SQLException e) {
System.out.println("Could not register JDBC driver\n");
}
try {
conn = DriverManager.getConnection("jdbc:oracle:oci8:@MYTEST", "test", "test");
} catch(SQLException e) {
System.out.println("Could not create connection\n");
}
System.out.println("Completed connection to database. Conn = " + conn);
}
}
------------------------------
If I run it with DriverManager.setLogWriter enabled, I get the following output:
------------------------------
DriverManager.getConnection("jdbc:oracle:oci8:@MYTEST")
trying driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@1172e08]
DriverManager.deregisterDriver: oracle.jdbc.driver.OracleDriver@cf2c80
SQLException: SQLState(72000) vendor code(12705)
java.sql.SQLException: ORA-12705: invalid or unknown NLS parameter value specified
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:189)
at oracle.jdbc.oci8.OCIDBAccess.check_error(OCIDBAccess.java:1774)
at oracle.jdbc.oci8.OCIDBAccess.logon(OCIDBAccess.java:467)
at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:377)
at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:515)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:345)
at java.sql.DriverManager.getConnection(DriverManager.java:512)
at java.sql.DriverManager.getConnection(DriverManager.java:171)
at hej.main(hej.java:24)
getConnection failed: java.sql.SQLException: ORA-12705: invalid or unknown NLS parameter value specified
Could not create connection
Completed connection to database. Conn = null
-----------------------------
Yet, if I try to connect from the command line using sqlplus, I am able to connect without any problems. My sqlplus connect string is as follows:
sqlplus test/test@MYTEST
I have checked, and double checked all the tnsnames.ora on the system, and they are all setup correctly. If I run this test program from another UNIX box using Oracle iAS9.0.2, it works!
Can anyone help?!?