Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

JDBC Treiber problem

Empfohlene Antworten

Veröffentlicht

Hi,

diesmal ist das ganze etwas ausgefallener, als vorher ... ;)

folgendes problem:

ich hab zwei jdbc treiber in meinem projekt: jdbc:ldap und den oracle jdbc treiber ...

wenn ich nun zum testen das prog starte und NUR den ldap treiber laufen hab (um benutzerdaten vom ldap zu ziehen) funtzt das alles wunderbar. treiber wird vom DriverManager geladen, initialisiert, die daten werden abgefragt, verbindung geschlossen, treiber entladen.

das gleiche auch, wenn ich NUR den oracle treiber verwende. treiber wird initialisiert, verbindung aufgebaut, daten abgefragt, verbindung geschlossen.

wenn ich aber beide zusammen verwende, gibts probleme. und zwar rennt ploetzlich der log-prozess des oracle treibers an und protokolliert fleissig mit.

wieso weiss ich net. wie gesagt, wenn ich nur einen der beiden treiber verwende funtzt das alles wunderbar.

hier mal ein auszug aus der console:


DriverManager.initialize: jdbc.drivers = null

JDBC DriverManager initialized

registerDriver: driver[className=com.novell.sql.LDAPDriver,com.novell.sql.LDAPDriver@13a317a]

DriverManager.getDriver("jdbc:ldap")

    trying driver[className=com.novell.sql.LDAPDriver,com.novell.sql.LDAPDriver@13a317a]

getDriver returning driver[className=com.novell.sql.LDAPDriver,com.novell.sql.LDAPDriver@13a317a]

DriverManager.deregisterDriver: com.novell.sql.LDAPDriver@13a317a

registerDriver: driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@9be79a]

DriverManager.getConnection("jdbc:oracle:thin:@172.20.1.9:1521:SID")

    trying driver[className=oracle.jdbc.driver.OracleDriver,oracle.jdbc.driver.OracleDriver@9be79a]

DRVR OPER Enabled logging (moduleMask 0x0fffffff, categoryMask 0x0fffffff)

...

weiss jemand rat?

Hat sich das Problem von selbst gelöst?? Wenn nein, dann poste doch mal bitte den Auszug vom Quellcode. Mal zum angucken.

ne, nich geloest.

anbei der novell ldap connect und der jdbc connect:


private void initLDAP() throws java.sql.SQLException, java.lang.ClassNotFoundException {

    url = server +

            ";user=" + user +

            ";password=" + password +

            ";baseDN=" + baseDN +

            ";useCleartext=true";


    // init the ldap class

    Class.forName("com.novell.sql.LDAPDriver");

    Driver driver = DriverManager.getDriver("jdbc:ldap");

    conn = driver.connect(url, null);

    //LDAPDriver ld = new LDAPDriver();

    // build the anonymous connection

    //conn = ld.connect(url, null);

    // set the users full name

    setUserFullName();

    // set the group memberships

    setGroupMembership();

    // close the connection

    conn.close();

    DriverManager.deregisterDriver(driver);


  }


public boolean openConnection() {

    try

    {

      Class.forName("oracle.jdbc.driver.OracleDriver");

      conn = DriverManager.getConnection(URI, USER, PASSWORD);

      stmt = conn.createStatement();

      return true;

    }

    catch (Exception e)

    {

      e.printStackTrace();

      return false;

    }

  }

nach dem ldap connect und der abfrage wird die verbindung geschlossen und der treiber de-registriert (gibt es da ne richtige deutsch uebersetzung? :D)

danach kommt der jdbc connect ...

so long

Kann es sein, das du dein Objekt "conn" global deklarierst?

(verdammt, ich weiß jetzt nicht ob´s daran liegt)

Aber vorsichtshalber würde ich entweder nach deinem Zugriff auf die Datenbanken (nach conn.close()) ein conn = null; setzen. Oder du deklarierst 2 Connections und nimmst diese für die einzelnen Datenbankzugriffe.

("private Connection conn1, conn2;")

Ansonsten schaut´s gut aus. Ich kann also auf die schnelle keinen direkten Fehler finden. :(

Peet

Hast du den JDBC-Treiber in den "classpath" mit aufgenommen?

Peet

ne, lag net an der nutzung von conn ... :(

  • 2 Wochen später...

Hi,

moechte das prob nochmal aktualisieren ... so langsam nerven die 6000 zeilen pro programmstart, da ich ab und an auch debug messages ausgebe und die dann erst suchen muss. :(

weiss jemand ne loesung?

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.