Verbindungsproblem zu Firebird DB

O

Oromis_32

Gast
Hallo,

Ich versuche gerade zum ersten mal, mit JDBC eine Verbindung zu einer Firebird (v2.1) Datenbank aufzubauen. Ich habe die libjaybird21.so (ja, es handelt sich um Linux) im Root-Verzeichnis der Anwendung, die wird auch gefunden. Wenn ich haber mithilfe von

Code:
connection = DriverManager.getConnection(dbInfo.filename, dbInfo.login, dbInfo.password);

versuche, eine Verbindung aufzubauen, bekomme ich folgende Exception:

Java:
Exception in thread "main" java.lang.RuntimeException: Failed to initilize Jaybird native library. This is most likley due to a failure to load the firebird client library.
	at org.firebirdsql.gds.impl.jni.JniGDSImpl.attemptToLoadAClientLibraryFromList(JniGDSImpl.java:100)
	at org.firebirdsql.gds.impl.jni.LocalGDSImpl.<init>(LocalGDSImpl.java:29)
	at org.firebirdsql.gds.impl.jni.LocalGDSImpl.<init>(LocalGDSImpl.java:19)
	at org.firebirdsql.gds.impl.jni.LocalGDSFactoryPlugin.getGDS(LocalGDSFactoryPlugin.java:40)
	at org.firebirdsql.gds.impl.GDSFactory.getGDSForType(GDSFactory.java:219)
	at org.firebirdsql.jca.FBManagedConnectionFactory.getGDS(FBManagedConnectionFactory.java:117)
	at org.firebirdsql.jdbc.FBDriver.connect(FBDriver.java:125)

Die client-libriary ist ja die libfbclient.so. Diese kann ich aber nicht in das Stammverzeichnis der Anwendung kopieren. Ich habe versuche, die Umgebungsvariable mit
Code:
export FIREBIRD=/opt/firebird/lib/
zu setzen, hat aber auch nichts gebracht.

Hat jemand eine Idee, wie ich auf meine Datenbank komme?

Danke im Voraus
 

turtle

Top Contributor
Müsste die Verbindung nicht anders aufgebaut werden, nach Doku in etwa

Connection connection = DriverManager.getConnection(
"jdbc:firebirdsql:localhost/3050:c:/db/employee.fdb",
"SYSDBA", "masterkey")

Steht irgendwas in firebird.log ?
 
Zuletzt bearbeitet:
O

Oromis_32

Gast
Hm, die Argumente, die ich getConnection mitgebe sind im endeffekt nur Strings aus einer config-file.

dbInfo.fielname entspricht "jdbc:firebirdsql:local:/daten/database/Ferienhaus.FDB",
dbInfo.login entspricht "sysdba" und
dbInfo.password entspricht "masterkey".
 
O

Oromis_32

Gast
Juhuu, dein Post hat mich trotzdem auf die Lösung gebracht:

ich habe jdbc:firebirdsql:local: statt jdbc:firebirdsql:localhost/3050 verwendet. Dämlicher Fehler!

Danke für deine Mühen!
 

Ähnliche Java Themen


Oben