Verbindung zu Oracle-Datenbank

Hallo,

ich habe ein Java-Programm übernommen, welches mit Usernamen, Passwort und URL auf eine Oracle-Datenbank zugreifen soll. Die Datenbank ist vom Rechner, auf dem das Programm läuft, auch erreichbar (Test mit Oracle-Client). Das Programm jedoch bekommt keinen Zugriff.

Die URL in der getConnection(…)-Methode lautet:
jdbc:oracle:thin:@192.168.10.3:1521:unicode
Sieht doch eigentlich nach einem ganz normalen URL aus, gell ?

In der Konsole (Eclipse) erscheint die folgende Auflistung an Fehlermeldungen:
Exception in thread „main“ java.lang.ArrayIndexOutOfBoundsException: 7
at oracle.security.o3logon.C0.r(C0)
at oracle.security.o3logon.C0.l(C0)
at oracle.security.o3logon.C1.c(C1)
at oracle.security.o3logon.O3LoginClientHelper.getEPasswd(O3LoginClientHelper)
at oracle.jdbc.ttc7.O3log.(O3log.java:289)
at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:251)
at oracle.jdbc.driver.OracleConnection.(OracleConnection.java:249)
at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:365)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:260)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at de.blue.bqdb.umkreis.db.DatabaseConnectionFactory.getNormalInstance(DatabaseConnectionFactory.java:63)
at de.blue.bqdb.umkreis.db.DatabaseConnectionFactory.getInstance(DatabaseConnectionFactory.java:96)
at de.blue.bqdb.umkreis.db.OraclePersistantDataLoader.getCoodinatesOfPLZ(OraclePersistantDataLoader.java:162)
at de.blue.bqdb.umkreis.GeoManager.getPLZsFromPLZ(GeoManager.java:32)
at de.blue.bqdb.umkreis.test.Umkreissuche.main(Umkreissuche.java:36)

Beim Debuggen ist herausgekommen, dass das(?) Problem immer beim Aufruf der getConnection(…)-Methode auftritt.

Wer kann mir etwas zu den Fehlermeldungen sagen? Hat jemand Hinweise, welche Schritte ich als nächstes ausführen sollte, um mich einer Lösung zu nähern?

Vielen Dank,
Lars

java.lang.ArrayIndexOutOfBoundsException: 7

Ein Array ist zu klein oder er versucht auf ein nicht existierendes Feld zuzugreifen!

Tipp:
Merke! Bei Arrays beginnen wir mit dem Zählen bei 0 ! :smiley:

MfG

D. Mertins

Hallo,

wahrscheinlich liegt es daran, dass du weder user noch passwort übergibst.
getConnection gibt es in der Variante (verbindung, user, pwd) oder (verbindung mit user und passwort)
Das sieht dann etwa so aus: „verbindung;user=xxx;pwd=zzz“
Ist aber datenbankspezifisch.

Gruß

Peter

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]