0

特別なニーズがある場合は、解凍された jar 形式の ojdbc6.jar を使用します。

データベース oracle への接続のコード ソースは次のとおりです。

import java.sql.DriverManager;
import java.sql.SQLException;
....

    try
    {

      String driver = "oracle.jdbc.driver.OracleDriver";
      String url = "jdbc:oracle:thin:@x.x.x.x:1521:dev";
      String login = "dev";
      String password = "dev";

      Class.forName(driver);

      DriverManager.getConnection(url, login, password); // Error is generated by this line

    }
    catch (SQLException e)
    {

      System.err.println("error");

    }

    .....

プログラムを起動すると、次の例外があります。

Caused by: java.lang.ArrayIndexOutOfBoundsException: -1
    at oracle.jdbc.driver.T4CTTIoauthenticate.setSessionFields(T4CTTIoauthenticate.java:999)
    at oracle.jdbc.driver.T4CTTIoauthenticate.<init>(T4CTTIoauthenticate.java:235)
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:370)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:546)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:236)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:521)
    at java.sql.DriverManager.getConnection(DriverManager.java:582)
    at java.sql.DriverManager.getConnection(DriverManager.java:185)
.......

私が使う

  • ojdbc6.jar (11.2.0.2)

  • JRE 1.6.0_24

  • オラクル11g

  • データベースにアクセスでき、データ接続が正しい。

4

1 に答える 1

0

RMI サーバーの問題について、上記と同じエラーを調べていました。ランタイム スクリプトに追加 -Djava.security.policy=$RMIPATH"/policy.txt"し、policy.txt ファイルを作成しました。

grant {
 permission java.security.AllPermission;
};

セキュリティを無効にするのは嫌いですが、うまくいきます...私のランタイムは1.8.31です

于 2015-01-27T18:01:20.313 に答える