MSSQL JDBC "Driver class not found"

spaghetti

Mitglied
N'abend zusammen,

ich versuche über JDBC die Verbindung zum Microsoft SQL Server herzustellen und habe das in einem anderen Projekt (selber Rechner, selbes Eclipse, JRE 1.6. , selber Server, selbe Zugangsdaten und selber JDBC Treiber) erfolgreich getan.
Ich versuche es aus Eclipse heraus und habe die sqljdbc4.jar im Buildpath meines Projekts doch ich bin nicht in der Lage eine Verbindung herzustellen.

Beim
Java:
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")
bekomme ich eine Class not found exception.

Habe in Eclipse beide von MS gelieferten JDBC Treiber und verschiedene JREs getestet - in einem Projekt mit, im anderen ohne Erfolg.

Hat jemand schon ähnliches erlebt und vielleicht nen heissen Tipp für mich? ;-)
 

nrg

Top Contributor
also bei einer ClassNotFoundException kann es imho nicht viel sein:
1. Buildpath
2. voll spezifierender Klassenpfad ist falsch
3. die falsche jar Datei bzw. Version (in Verbindung mit Punkt 2)

für Punkt 1: Rechtsklick auf Project > Buildpath > Add External JARs
für Punkt 2+3: jar-Datei mit WinRAR o.ä. öffnen und schauen ob die Klasse in dem Package exisitert

aber vermutlich werden dir die Punkte auch selbst klar sein nur von meiner Seite sehe ich keine andere Ursache

edit: achja, für MS SQL bietet sich auch jdts an
 

spaghetti

Mitglied
Moin Nrg,
die ersten Punkte hab ich selbst schon mehrfarch überprüft, die sinds nicht. Ich verwende wirklich das selbe jar und den exakt gleichen Funktionsaufruf für die gleiche Datenbank in einem anderen Projekt.

Werds morgen mal mit dem jtds testen, wäre zwar komisch, aber würde mich nicht wundern, wenns dann klappt.
 

spaghetti

Mitglied
Leider ändert auch der jtds nichts daran, die Fehlermeldung bleibt die gleiche.
Der Classpath müsste aber in Ordnung sein, wenn ich innerhalb des Projekts im selben Paket einfach mal ne Klasse (main-Klasse um schnell testen zu können) anlege, kann ich mich zur Datenbank verbinden und Statements abfeuern.
Habe auch mal ein neues Projekt angelegt und nur die Sourcen kopiert - ohne Erfolg. Mir gehen die Ideen aus...
 
M

maki

Gast
nrg hat eiogentlich schon alle möglichen Ursachen genannt, der voll qiual. Name der Klasse ist falsch, doer die Klasse ist nicht im ClassPath.

Zeig doch mal einen Screenshot von deinem Buildpath.
 

spaghetti

Mitglied
Ich habe mal nen Screenshot vom Buildpath, der Struktur der eingebundenen Klasse sowie vom Verzeichnis in dem die jars liegen gemacht.
Aufruf in diesem Fall dann:
Java:
Class.forName("net.sourceforge.jtds.jdbc.Driver")

Ich habe auch mal direkt vor dem Aufruf über System.getProperty("java.class.path") den CP ausgelesen, da ist die jar nach wie vor vorhanden.



Edit: Ich habs! :shock: Ich flieg nicht beim Class.forName ab, sondern ich versuche 1 Zeile später ne Property zu putten, das Propertyobjekt ist aber null und hab den Übergang beim Debuggen übersehen :oops:
 
Zuletzt bearbeitet:
D

despikeexd

Gast
Wieder mal ein typischer Fall von NICHT-Wissen.

Zur kleinen Erklärung : seit Java1.4.2 werden ALLE JDBC-Driver welche zum Start der VM bekannt sind automatisch geladen. Ein Class.forName() oder DriverManager.registerDriver() sorgt also nur dafür das ein und der selbe Driver ZWEIMAL registriert ist.
Lasse dir vom DriverManager einfach mal alle geladenen Driver ausgeben ob deiner überhaupt dabei ist ... falls JA : er sollte durch den Aufruf von Class.forName() zweimal enthalten sein ... falls NEIN : sollte er GARNICHT drinstehen und liegt demzufolge auch nicht im CP.

*Immer wieder der selbe Fehler ... alter ich glaubs nicht.*
 

spaghetti

Mitglied
Wieder mal ein typischer Fall von NICHT-Wissen.
Zur kleinen Erklärung : seit Java1.4.2 werden ALLE JDBC-Driver welche zum Start der VM bekannt sind automatisch geladen. Ein Class.forName() oder DriverManager.registerDriver() sorgt also nur dafür das ein und der selbe Driver ZWEIMAL registriert ist.
Lasse dir vom DriverManager einfach mal alle geladenen Driver ausgeben ob deiner überhaupt dabei ist ... falls JA : er sollte durch den Aufruf von Class.forName() zweimal enthalten sein ... falls NEIN : sollte er GARNICHT drinstehen und liegt demzufolge auch nicht im CP.

*Immer wieder der selbe Fehler ... alter ich glaubs nicht.*

Einatmen... ausatmen... du kommst schon drüber hinweg. Bin noch relativ frisch auf dem Gebiet Java und da ich in diesem Projekt freie open source software anpasse, bin ich nicht gleich über den Fehler des Autors gestolpert.

@NRG Das hab ich mir auch so gedacht, die drüberliegende Funktion schmeisst aber Class not Found. Nachdem ich die Property initialisiert hab, funktioniert alles.
 

HoaX

Top Contributor
Was darüber steht sollte für die Fehlermeldung belanglos sein.
Normalerweise loggt man den Fehler ja irgendwo, zur Not mit Exception#printStackTrace(). Da steht dann der Name drin welcher wirklich aufgetreten ist. System.out.println("ClassNotFoundException: Treiber konnte nicht geladen werde"); und ähnliche sind immer der falsche Weg.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Keine Verbindung zu MSSQL DB mit JDBC Datenbankprogrammierung 3
Paristick MSSQL - JDBC Exception beim Registrieren Datenbankprogrammierung 5
mihe7 MSSQL Express als Kommunikationsmedium Datenbankprogrammierung 8
L Oracle Daten von Oracle zu MSSQL übertragen Datenbankprogrammierung 4
F MSSql oder MongoDB für die Speicherung von POI Datenbankprogrammierung 9
P Android - MsSQL Datenbankprogrammierung 6
T berechnetes Feld mssql Datenbankprogrammierung 7
M Verbindung mit MSSQL hängt! Datenbankprogrammierung 2
C [MSSQL] Datenbankverbindung will nicht klappen... Datenbankprogrammierung 2
V MySQL MsSql ohne Server nutzen? Datenbankprogrammierung 2
D MSSQL JDTS JTL Datenabnk Datenbankprogrammierung 7
F MSSQL-Server Verbindung Datenbankprogrammierung 5
B Japanische Zeichen in MSSQL-DB speichern Datenbankprogrammierung 2
B MSSQL und NetBeans IDE 6.8 Datenbankprogrammierung 2
U MSSQL Verbindung steht, aber meckert beim Statement Datenbankprogrammierung 2
H CSV Datei in MSSQL DB oder doch SQL Script Datenbankprogrammierung 11
E MSSQL-Server connection aufbau sehr langsam Datenbankprogrammierung 2
A MSSQL - Datenbank mit Punkt Datenbankprogrammierung 3
A MSSQL - Spalten mit der Option: NULL zulassen Datenbankprogrammierung 2
Landei MsSql Express Server 2008 Datenbankprogrammierung 8
G MSSQL Server SELECT Abfrage funktioniert nicht Datenbankprogrammierung 4
G MSSQL - SQL DriverManager - Funktionen Datenbankprogrammierung 2
W Connect zu MSSQL will einfach nicht Datenbankprogrammierung 3
M Fehler bei der Verbindung zu einer MSSQL/Express Datenbank! Datenbankprogrammierung 17
G MsSQL | Statement.execute(String s) Datenbankprogrammierung 3
M Datum's String in MSSQL oder MySQL wie konvertieren ? Datenbankprogrammierung 3
M Daten von MySQL nach MSSql probleme beim schreiben Datenbankprogrammierung 3
B Fortschrittsanzeige bei Datenübermittlung von MsSQL DB Datenbankprogrammierung 13
R Hilfe mit Umlauten und MSSQL Datenbankprogrammierung 10
B SQLite + jdbc + IntelliJ-Consumer = "No suitable driver found..." Datenbankprogrammierung 15
J PC-Start Problem JDBC Connection Datenbankprogrammierung 10
N JDBC SQLITE und Cascading Datenbankprogrammierung 2
D Asynchrone Aufrufe mit jdbc Datenbankprogrammierung 5
Edin JDBC Hilfe Datenbankprogrammierung 2
H JDBC Tabellen ausgeben Datenbankprogrammierung 8
Husamoli345 JSF-JDBC Verbindung Crud Datenbankprogrammierung 15
G MySQL JDBC Metadaten auslesen aus .accdb -> Primärschlüssel manchmal erkannt manchmal nicht Datenbankprogrammierung 3
N Java, sql, jar, JDBC-Treiber in Classpath Datenbankprogrammierung 8
O Create Table per JDBC Fehler: ORA-00922 Datenbankprogrammierung 4
J JDBC anschaulich präsentieren Datenbankprogrammierung 2
Thallius MySQL JDBC auf Linux Server zu mySQL DB auf anderem Linux Server wirft Access denied Datenbankprogrammierung 5
ralfb1105 Oracle JDBC Debugging Datenbankprogrammierung 8
Z [JDBC][MYSQL] Access denied Datenbankprogrammierung 7
Thallius MySQL jdbc schließt Verbindung nach vielen Request von selber Datenbankprogrammierung 8
B MySQL JDBC Kommentarfilter Datenbankprogrammierung 4
Aruetiise MySQL Name JDBC Drive finden Datenbankprogrammierung 4
E Sqlite-jdbc Mitliefern Datenbankprogrammierung 4
R jdbc-Zugriff Nicht erlaubt ? Datenbankprogrammierung 16
S probleme mit dem jdbc treiber Datenbankprogrammierung 1
Thallius MySQL Merkwürdiges JDBC Verhalten bei VPN Verbindung. Datenbankprogrammierung 7
O JDBC Daten in zwei Tabellen mit zwei foreach-Schleifen einfügen (insert into) Datenbankprogrammierung 1
F MySQL JDBC Problem Datenbankprogrammierung 5
C JDBC und SQLite Datenbank Datenbankprogrammierung 8
looparda SQLite Active JDBC Abstraktion Datenbankprogrammierung 2
J JDBC SQL Statement mit Parameter Datenbankprogrammierung 7
S JDBC PreparedStatement durchiterieren Datenbankprogrammierung 6
J RESTServie + JDBC + No suitable driver found for jdbc Datenbankprogrammierung 4
KaffeeFan JDBC/ODBC-Bridge entfernt Datenbankprogrammierung 4
S sun.jdbc.odbc.JdbcOdbcDriver wird nicht gefunden Datenbankprogrammierung 2
J Fehlende DatenbankView nach einbeziehen von JDBC Datenbankprogrammierung 3
A Mit JDBC auf postgreSQL Datenbank zugreifen Datenbankprogrammierung 5
C PostgreSQL JDBC + PostgreSQL: getLong liefert 0 statt NULL Datenbankprogrammierung 2
flenst111 SQL-Statement Wie konfiguriert man JDBC-Connect.richtig, damit es bei riesigen Tabs keinen Speicherüberlauf gibt? Datenbankprogrammierung 1
M JDBC Tabellen mit Boolean Spalten können nicht erstellt werden. DB Updaten - wie? Datenbankprogrammierung 6
S JDBC mit Postgres DB connecten Datenbankprogrammierung 3
A Eine MySQL Zeile mit JDBC löschen Datenbankprogrammierung 5
D JDBC - Verständnisfrage Datenbankprogrammierung 2
C Tabelle erstellen mit Apache JDBC-Util Datenbankprogrammierung 1
L Conversion-Error bei JDBC Date Literals Datenbankprogrammierung 3
X MySQL DB-verbindung ohne JDBC/ODBC Datenbankprogrammierung 1
F sun.jdbc.odbc.jdbcodbcdriver wird nicht gefuden Datenbankprogrammierung 3
U JDBC prepaird Statements Datenbankprogrammierung 4
B MySQL JDBC Zugriff auf entfernt Datenbank, fehlende Rechte Datenbankprogrammierung 2
Q MySQL JDBC-Treiber Problem Datenbankprogrammierung 2
R Transaktionen von mehreren Anwendungen aus - JDBC Datenbankprogrammierung 3
N MySQL com.microsoft.sqlserver.jdbc.SQLServerException: Die Verbindung wurde geschlossen. Datenbankprogrammierung 1
N JDBC: rollback() bei Exception geht nicht!? Datenbankprogrammierung 1
C Dateipfad des jdbc Treibers Datenbankprogrammierung 2
G JDBC Connect nur über SID fehlerfrei möglich Datenbankprogrammierung 2
R Oracle jdbc Zugriff auf Oracle Datenbankprogrammierung 2
T JDBC Fehler Datenbankprogrammierung 2
J JDBC via Singleton Datenbankprogrammierung 12
Z PostgreSQL JDBC mit Postgresql Datenbankprogrammierung 2
B No suitable driver found for jdbc:oracle:thin:@$HOST:$PORT:$SID Datenbankprogrammierung 7
K JDBC via Netzwerk Datenbankprogrammierung 4
B JDBC Connection Fehler Datenbankprogrammierung 8
K JDBC- In Java "stored procedure" erstellen für DB2,OracleSql ... Datenbankprogrammierung 3
J JDBC in Library|"Treiber konnte nicht geladen werden"" Datenbankprogrammierung 2
B JDBC-Connection: Data source name too long Datenbankprogrammierung 3
D JDBC insert mit select abfrage Datenbankprogrammierung 5
A JDBC Prepared Statement Autoincrement Datenbankprogrammierung 3
H JDBC prüfen ob Table existiert Datenbankprogrammierung 3
crashfinger jdbc-connection mit jre7 funktioniert nicht Datenbankprogrammierung 5
0 JDBC Oracle Verbindungsaufbau Datenbankprogrammierung 6
Q Oracle Linux: ClassNotFoundException: oracle.jdbc.driver.OracleDriver Datenbankprogrammierung 6
B JDBC MySQL Statement Datenbankprogrammierung 3
F Oracle Oracle JDBC Anbindung unter Glassfish 3.1.2 Datenbankprogrammierung 3
V PostgreSQL JDBC Treiber fehlt Datenbankprogrammierung 6
Y JDBC - Datenbankabfrage Webserver Datenbankprogrammierung 4
C JDBC Datenbank funktioniert nicht Datenbankprogrammierung 7

Ähnliche Java Themen

Neue Themen


Oben