No suitable driver et NoClassDefFoundError:java/sql/Savepoint

edaunye Messages postés 17 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 17 septembre 2008 - 21 nov. 2005 à 15:09
edaunye Messages postés 17 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 17 septembre 2008 - 22 nov. 2005 à 15:03
Bonjour

Je retape mon message, c'est sorti en vrac, j'espere que ç va marcher
J'ai un applet de connexion à une base (voir code plus bas) qui fonctionne très bien, lancé à partir d'eclipse.
Mais si je la lance à partir d'un navigateur (safari, firefox, netscape et explorer sur mac os x 10.4.3 j'ai le message suivant :
"java.lang.NoClassDefFoundError:java/sql/Savepoint" sur mon serveur local MAMP
et sur un serveur distant, chaineconnexion modifié bien sur, j'ai le message suivant :
"no suitable driver"
On m'a dit de mettre le fichier "mysql-connector-java-3.1.11-bin.jar" dans le même repertoire mais ça ne fonctionne toujours pas.Je débute en JAVA, si quelqu'un pouvait m'aider, ce serait super sympamerci d'avance

import java.applet.Applet;

import java.sql.*;
import javax.swing.*;

public class ConnectMySqlApplet extends Applet {

static Connection connec;

static String chaineconnexion = "jdbc:mysql://localhost:8889/courses";

static String login = "root";

static String pass = "root";

public static Connection getConnec() throws Throwable {
Class.forName("com.mysql.jdbc.Driver");
return DriverManager.getConnection(chaineconnexion, login, pass);
}

public void init() {
JFrame myFrame = new JFrame();
try {
connec = getConnec();

Statement instruction2 = connec.createStatement();
ResultSet resultat = instruction2
.executeQuery("SELECT * FROM produits");

while (resultat.next()) {
JOptionPane.showMessageDialog(null, resultat.getString("nom"));
}
resultat.close();
} catch (Throwable exception) {
JOptionPane.showMessageDialog(null, "Erreur : " + exception);
}

}

public void start() {

}

}

2 réponses

cs_Zart Messages postés 285 Date d'inscription jeudi 29 juillet 2004 Statut Membre Dernière intervention 27 juin 2006 1
22 nov. 2005 à 14:34
J'ai cru comprendre que tu utilisais eclipse. Pour le faire fonctionner
tu as simplement importer le .jar dans ton projet en fait ?

Et oui effectivement si ça ne fonctionne po cela viens de la localisation de ton jar pour la connexion...

La solution la plus commune est de glisser le jar du bridge vers ta
base dans ton dossier java et les sous-dossiers jre/lib/ext de la
machine qui exécute ton programme...

Comme ça à l'exécution ça fonctionneras avec cette lib ;)



Cherche des infos sur ça dans google, je suppose que
"mysql-connector-java-3.1.11-bin.jar" doit être ce qui te pose le plus
de problème va directement sur le site de la communauté de MySQL ? ou
alors recherche dans google Mysql jdbc ? ou alors va à cette adresse http://jmvanel.free.fr/mysql-start.html



Voilà si tu as besoin de plus d'infos fais moi signe et si ça fonctionne aussi ;)
0
edaunye Messages postés 17 Date d'inscription lundi 16 mai 2005 Statut Membre Dernière intervention 17 septembre 2008
22 nov. 2005 à 15:03
je te remercie mais j'ai trouvé (voir post appele "JDBC")

Pour ceux que ça intéresse, j'ai tout simplement viré "mysql-connector-java-3.1.11-bin.jar" pour le remplacer par "mysql-connector-java-3.0.17-ga-bin.jar" et ça fonctionne

il est indiqué dans la doc :
Because of the implementation of java.sql.Savepoint, Connector/J 3.1.0 and newer will not run on JDKs
older than 1.4 unless the class verifier is turned off (-Xverify:none), as the class verifier will try to load
the class definition for java.sql.Savepoint even though it is not accessed by the driver unless you actually
use savepoint functionality.
Caching functionality provided by Connector/J 3.1.0 or newer is also not available on JVMs older than
1.4.x, as it relies on java.util.LinkedHashMap which was first available in JDK-1.4.0.

ce qui est bizarre, c'est que j'ai la 1.4.2
si tua une explication ?

Par contre ça ne fonctionne toujours pas sur une base distante avec le code plus bas
j'ai le message suivant : No Suiteable driver
Est-ce que ça veut dire que c'est free qui n'a pas les bon drivers ?!

avec les codes plus haut modifiés:
import java.applet.Applet;
import java.sql.*;
import javax.swing.*;

static String chaineconnexion = "jdbc:mysql:http://sql.free.fr/####";
static String login = "######";
static String pass = "######";
0
Rejoignez-nous