Netbeans や SQuirrel などのクライアントを使用した Oracle DB への接続に問題があります。私のオペレーティングシステムは Windows 7 です。
私は、このテストケースのために非アクティブ化されたファイアウォールの背後にいます。
次のようなプレーンな Java を使用して DB に接続しようとしている場合:
public static void main(String[] args) {
Connection connection = null;
try {
// Load the JDBC driver
String driverName = "oracle.jdbc.driver.OracleDriver";
Class.forName(driverName);
// Create a connection to the database
String serverName = "servername";
String portNumber = "1521";
String sid = "sid";
String url = "jdbc:oracle:thin:@" + serverName + ":" + portNumber + "/" + sid;
String username = "user";
String password = "pass";
connection = DriverManager.getConnection(url, username, password);
System.out.println(url);
} catch (ClassNotFoundException | SQLException e) {
e.printStackTrace();
} finally {
try {
System.out.println("connection read only:" + connection.isReadOnly());
System.out.println("connection closed:" + connection.isClosed());
System.out.println("connection isValid:" + connection.isValid(500));
connection.close();
System.out.println("connection closed:" + connection.isClosed());
} catch (SQLException ex) {
Logger.getLogger(JavaApplication3.class.getName()).log(Level.SEVERE, null, ex);
}
}
出力は次のとおりです。
URL
connection read only:false
connection closed:false
connection isValid:true
connection closed:true
だから、これはうまくいきます。
しかし、Netbeans、Squirrel などのツールを介して接続しようとすると、常に次のようなエラーが発生します
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Caused by: oracle.net.ns.NetException: The Network Adapter could not establish the Connection
// ...
Caused by: java.net.SocketException: Malformed reply from SOCKS erver
私は次に何をすべきか見当がつかない..私が次に試すことができる何か良いヒントはありますか?