IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JDBC Java Discussion :

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver error


Sujet :

JDBC Java

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 8
    Points : 1
    Points
    1
    Par défaut java.lang.ClassNotFoundException: com.mysql.jdbc.Driver error
    Bonjour à tous,

    depuis quelques temps j'obtiens cette erreur lors de la connexion à une base de données. La compilation marche très bien. J'ai installé le package libmysql-java. Pourtant le problème persiste. J'ai aussi essayé de copier le jar de mysql dans le jre/lib, mais en vain. Je suis obligé d'inclure le jar de mysql dans mon jar pour que cela marche.
    J'ai aussi essayé la commande -classpath mysql_jar_file.
    Quelqu'un aurait-il une idée ?
    Merci
    --
    Hypnoce

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Quel type d'application (web, client lourd) ?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    C'est une application relativement légère (les sources font 1Mo) tournant sur un serveur debian/etch avec java6. Sur mon poste de travail, tout fonctionne correctement. En revanche, le passage au serveur pose problème.

    --
    Hypnoce

  4. #4
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Quelle est l'URL utilisée pour la connection ?
    Et tant qu'on y est, quelle est l'erreur au juste (ClassNotFoundException, NullPointerException, ...)?
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  5. #5
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    l'erreur est celle donnée dans le titre du thread: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver error
    Voici la commande dans le code source:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Class.forName("com.mysql.jdbc.Driver").newInstance();
    comme indiqué dans la doc de mysql connector 5.1.
    L'url marche car elle marche sur mon poste de travail. J'utilise la même version du connector.

  6. #6
    Membre éprouvé
    Profil pro
    Développeur Back-End
    Inscrit en
    Avril 2003
    Messages
    782
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Back-End

    Informations forums :
    Inscription : Avril 2003
    Messages : 782
    Points : 935
    Points
    935
    Par défaut
    Bonjour,

    la jar client de mysql est présent sur le serveur ?

  7. #7
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Oui
    J'ai installé le package libmysql-java. Pourtant le problème persiste. J'ai aussi essayé de copier le jar de mysql dans le jre/lib, mais en vain.

  8. #8
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Tu utilises un programme de test avec un main(String[] args) ?
    Si c'est le cas, il faut :
    - positionner le paramètre Class-Path dans le ficheir MANIFEST.MF
    - copier le jar du driver au même endroit (par exemple) que le jar de ton application
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  9. #9
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Oui, il y a un main(String[] args).
    Je ne comprends pas pourquoi faudrait-il copier le jar du driver au même endroit que mon jar. En effet sur mon serveur debian, j'ai installer libmysql-java comme suit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    aptitude install libmysql-java
    Si je commence à inclure les jar du driver, cela pose des problèmes de maintenance de mon appli. Normalement, java va chercher par défault les libs nécessaires dans la lib du JRE et en ayant installé la package libmysql-java, cela devrait en théorie marcher (si les packages sont bien fait).
    Par exemple, je ne vais pas inclure le rt.jar.

  10. #10
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Mais ton programme, tu le testes sur la même machine que ton serveur DB ou sur une autre ?
    Si c'est sur la même, tu peux référencer le jar du driver au niveau du Class-Path (comme dit avant), sinon, tu seras bien obligé d'ajouter le jar du driver aux dépendances de ton programme
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  11. #11
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    J'ai un poste de travail Windows sur lequel de développe et un serveur 2 serveurs distants debian dont un héberge la bdd et l'autre sur lequel j'exécute mon appli. Mais si quelqu'un utilise mon appli, il devra changer le manifest, ce qui est embêtant compte tenu du cahier des charges. Pourquoi java ne regarde-t-il pas dans tout les .jar du default classpath (./jre/lib).
    Pourquoi regarde-t-il le rt.jar et pas mysql.jar , tous-deux situés dans le même répertoire.
    Même avec la commande -cp mysql.jar cela ne fonctionne pas.
    Je me pose peut-être trop de question mais j'ai pas envi de faire quelque chose de sale.

  12. #12
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Bon, suppose que tu déploies ton application sur un poste lambda.
    Tu dois bien avoir le jar du driver JDBC à disposition sur ce poste.
    Donc, comme on ne peut pas référencer un jar dans un jar (ce qui serait bien pratique), il faut déployer :
    1) le jar de ton application
    2) le jar du driver JDBC (on va supposer qu'il se nomme mysql_jdbc_driver.jar)

    Tant qu'à faire, on le déploie au même endroit et on ne touche pas au MANIFEST.MF.
    Il ressemblera à ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Manifest-Version: 1.0
    Main-Class: le.package.qui.va.bien.LaClasseMain
    Class-Path: mysql_jdbc_driver.jar
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  13. #13
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Mais pourquoi ne faut donc-t-il pas inclure le rt.jar comme le mysql_jdbc_driver.jar dans le manifest ?

  14. #14
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 310
    Points : 9 522
    Points
    9 522
    Billets dans le blog
    1
    Par défaut
    Parce que le fichier manifest n'est pas fait pour ça...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  15. #15
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2008
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 8
    Points : 1
    Points
    1
    Par défaut
    Mais alors j'ai deux questions :
    Pourquoi trouve-t-il rt.jar et pas mysql.jar qui se trouve dans le même répertoire?
    Pourquoi en ajoutant -cp /usr/share/java (sous debian), cela ne marche toujours pas ?

  16. #16
    Membre du Club
    Inscrit en
    Juin 2008
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 34
    Points : 40
    Points
    40
    Par défaut
    Bonjour,
    Bon , l'exportation en general des libraries utilisé sous eclipse vers un fichier jar pose toujours un probleme, cela n est pas relatif a mysql au juste mais a toutes les librairies externes que tu utilises sur ton projet ! et je dis bien par externes toute libraire non supporté par defaut par la JVM !
    Tu as le choix entres deux choses, soit tu exportes la bibliotheque sur ton jar et tu indiques son chemin sur le Manifest au niveau de la ligne Class-Path !
    Soit tu crées un fichier d installation pour ton application , et ce dernier se chargera de copier les bibliotheques dont t a besoin sur les repertoires destinés a les contenirs !
    Si tu trouves que l'installeur serait interessant comme solution tu me contactes je l expliciterai ici mm !
    Bonne chance

  17. #17
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    rt.jar fait partie de la jvm, la jvm l'inclue automatiquement. Elle inclue aussi automatiquement ce qui est dans jre/endorsed (si ma mémoire est bonne). Pour utiliser des librairies additionnelles à la jvm (exemple mysql), t'as plusieurs choix:

    1) utiliser java -cp /chemin/vers/mysql.jar:monlogiciel.jar monpackage.MonMain
    2) utiliser, comme mentionné plus haut, le MANIFEST.MF
    3) exploser les jar additionnel et les inclures dans ton jar (méthode moche)

  18. #18
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 55
    Points : 40
    Points
    40
    Par défaut
    J'ai le meme probleme posé, lorsque j'execute mon programme (je cree les fichier class ,le stub puis lance le serveur en ligne de commande) je recois sur le terminal cette erreur (ubuntu, java 6)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
    Pourtant j'ai ajouté le mysql-connector a partir des propriétes du projet (java build path, add external jar) et c'est le meme connector que j'utilisais lorsque je faisais tout en local.

    le client (une interface graphique)avec eclipse et sur la console une autre erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    java.lang.NullPointerException
    	at serveur.IClientImpl.valider(IClientImpl.java:68)
    et la ligne 68 pointe sur st=connection.createStatement();
    Selon ce que j'ai cru comprendre cette dernière erreur arrive lorsqu'on n'instancie pas un objet. J'ai parcouru mon code sans voir ce qui cloche.Peut etre que d'autre yeux plus expertes pour trouver le qui ne va pas .Merci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
     
    package serveur;
     
    import java.rmi.server.UnicastRemoteObject;
    import java.io.*;
    import java.rmi.*;
    //import java.rmi.server.UnicastRemoteObject;
    import java.sql.*;
     
    //import java.util.*;
    //import java.util.Date;
     
    import javax.swing.JOptionPane;
     
    //import frame.Fenetre;
    import frame.IClient;
     
    public class IClientImpl extends UnicastRemoteObject implements IClient {
     
    	boolean creer,trouve,creer1;
    	Connection connection=null;	
    	Statement st=null;
    	ResultSet rs=null;
    	int numc1=0,recupmin=0;
    	String sep = File.separator ;
    	Client c;
     
    	public IClientImpl()throws RemoteException{
    		super();
    	}
     
    	public boolean valider(String prenom,String nom,String adresse,String tel,int jour,int mois,int annee,int heure,int minute,String canal)throws RemoteException
    	{
    		System.setSecurityManager(new RMISecurityManager());
    		c=new Client(prenom,nom,adresse,tel,jour,mois,annee,heure,minute,canal);
    		System.out.println("nom : "+nom);
    		System.out.println("prenom : "+prenom);
    		System.out.println("adresse : "+adresse);
    		System.out.println("tel : "+tel);
    		System.out.println("jour : "+jour);
    		System.out.println("mois : "+mois);
    		System.out.println("annee : "+annee);
    		System.out.println("heure : "+heure);
    		System.out.println("minute : "+minute);
     
    		// CONNEXION A LA BASE DE DONNEES  
     
    	     try{
    	    	   Class.forName("org.gjt.mm.mysql.Driver");
    	    	   connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/stage", "root", "passer");
    	    	   //connection = DriverManager.getConnection("jdbc:mysql://localhost/stage", "root", "passer");
     
    	    	}
    	    	catch(ClassNotFoundException cnfe)
    	    	{
    	    	   System.out.println("Driver introuvable : ");
    	    	   cnfe.printStackTrace();
    	    	}
    	    	catch(SQLException sqle)
    	    	 {
    	    	   System.out.println("Erreur SQL : ");
    	    	   sqle.printStackTrace();
    	    	 }
     
     
    	    	try
    	         {    
    		      System.out.println("avant ");   	
    		      st=connection.createStatement();					         	        	
    		      rs=st.executeQuery("SELECT `minute` from `rendezvous` where `mois`="+ mois +" and `jour`="+ jour +" and `heure`="+ heure +"");
        	      while (rs.next())  
                   {					        	             
                    recupmin = rs.getInt(1);
                    System.out.println ("numclient: " +recupmin);
                    if(recupmin==minute)
                    {
                     System.out.println("trouve"); 					                           
                     trouve=true;                    
                     break; 
                    } 
                    else
                     {
            	        trouve=false;
            	        System.out.println(" absent"); 
                     }
                    }     
     
        	      st.close();
    		      connection.close();
                  }
                  catch(SQLException sql){}
    	    trouve=false;	
     
            if(trouve==true)
            {
                JOptionPane.showMessageDialog (null,"Un Rendez-vous à été déjà pris à cette heure","Message d'alerte",
    				JOptionPane.INFORMATION_MESSAGE, null); 
            }
     
            if(trouve==false)
            {
     
           		   String sep = File.separator ;
    			   File fichierc = new File ("/home/charles"+sep+"clients"+sep+"client"+c.getTel()+".call");
    			   File fichiers = new File ("/home/charles"+sep+"scripts"+sep+"client"+c.getTel()+"call");
     
    			 //Creation du fichier call  
    			   try {
    				    if(!fichierc.exists())
    				     {
    			          creer=fichierc.createNewFile ( );
    			         }
    				    else creer=fichierc.delete();
    			       }
    			   catch ( IOException fic)
    			    {
    				 fic.printStackTrace() ;
    		        }
     
    			   try {
    				    FileWriter	fw = new FileWriter( fichierc ,true);		
    			        BufferedWriter bw = new BufferedWriter(fw); 
     
    			        bw.write("Channel: "+canal);
    			        bw.newLine();
    			        bw.write ("MaxRetries: 0");
    			        bw.newLine();
    			        bw.write ("RetryTime: 30");
    			        bw.newLine();		        
    			        bw.write ("WaitTime: 30");
    			        bw.newLine();
    			        bw.write ("Context: default");
    			        bw.newLine();
    			        bw.write ("Extension: "+tel);
    			        bw.newLine();
     
    			        bw.close ( ) ;
    			        fw.close();
    			       }
    			   catch(IOException f){}
     
      		//Creation du fichier batch	   
    			   try {
    				    if(!fichiers.exists())
    				     {
    			          creer1=fichiers.createNewFile ( );
    			         }
    				    else creer1=fichiers.delete();
    			       }
    			   catch ( IOException b)
    			    {
    				 b.printStackTrace() ;
    		        }
     
    			   try {
    				    FileWriter	fwc = new FileWriter( fichiers ,true);		
    			        BufferedWriter bwc = new BufferedWriter(fwc); 
     
    			        bwc.write("mv /home/charles/clients/client"+c.getTel()+".call /var/spool/asterisk/outgoing/");
    			        bwc.close ( ) ;
    			        fwc.close();
    			       }
    			   catch ( IOException c)
    			    {
    				 c.printStackTrace() ;
    		        }
     
     
    			   try 
    			     {
    				   Runtime.getRuntime().exec("/usr/bin/at -f /home/charles/scripts/client"+c.getTel()+"call " +heure+":"+minute+" "+mois+""+jour+""+annee+"");
    				   //System.out.print("/usr/bin/at -f /home/charles/scripts/client"+id+"call " +heure+":"+minute+" "+mois+jour+annee+"");
    				 } 
    			     catch (IOException d){ }
     
     
    			  // CONNEXION A LA BASE DE DONNEES  
     
    			     try{
    			    	   Class.forName("org.gjt.mm.mysql.Driver");
    			    	   connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/stage", "root", "passer");
    			    	   //connection = DriverManager.getConnection("jdbc:mysql://localhost/stage", "root", "passer");
     
    			    	}
    			    	catch(ClassNotFoundException cnfe)
    			    	{
    			    	   System.out.println("Driver introuvable : ");
    			    	   cnfe.printStackTrace();
    			    	}
    			    	catch(SQLException sqle)
    			    	 {
    			    	   System.out.println("Erreur SQL : ");
    			    	   sqle.printStackTrace();
    			    	 }
     
     
    			    	try
    			        {   
     
    			    		System.out.println("insertion info rendez-vous ");   	
    			    		st=connection.createStatement();
    			        	System.out.println("avant2 ");
    			        	int req1=st.executeUpdate("INSERT INTO `clients` (`nom` , `prenom` , `adresse` , `tel`) VALUES ('"+ nom +"', '"+ prenom +"', '"+ adresse +"', "+ tel +")");
     
    			        	System.out.println("Select");
    			        	rs=st.executeQuery("SELECT `numclient` from `clients` where `tel`="+ tel +" ");
    			        	while (rs.next())  
    			            {
     
    			             numc1 = rs.getInt(1);
    			             System.out.println ("numclient: " +numc1);
    			            }     
    			        	//st=connection.executeQuery("SELECT `id_rv` from rendezvous where numclient="+numc+")");
    			        	int req2=st.executeUpdate("INSERT INTO `rendezvous` (`numclient` ,`annee` , `mois` , `jour` , `heure`, `minute`) VALUES ("+ numc1 +", "+ annee +", "+ mois +", "+ jour +", "+ heure +", "+ minute +")");
    			        	System.out.println("apres");
     
    			        	st.close();
    				    	connection.close();
    			        }
    			        catch(SQLException sql){}
     
            } //Fin if(trouve==false)
     
    		return creer;
    	}
     
     
     
    }

  19. #19
    Expert éminent sénior
    Avatar de tchize_
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2007
    Messages
    25 481
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2007
    Messages : 25 481
    Points : 48 806
    Points
    48 806
    Par défaut
    Citation Envoyé par charles9 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    java.lang.ClassNotFoundException: org.gjt.mm.mysql.Driver
    Pourtant j'ai ajouté le mysql-connector a partir des propriétes du projet (java build path, add external jar)
    Même réponse: tu dois ajouter ton jar au classpath d'exécution (l'ajouter au projet eclipse, ne l'ajoute que pour eclipse, faut configurer la création du jar et ajouter ton MANIFEST.MF référencant le connecteur mysql)

    Citation Envoyé par charles9 Voir le message
    le client (une interface graphique)avec eclipse et sur la console une autre erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    java.lang.NullPointerException
    	at serveur.IClientImpl.valider(IClientImpl.java:68)
    et la ligne 68 pointe sur st=connection.createStatement();
    Ton objet connection est null. T'as probablement eu une erreur lors de la création du driver mais t'as essayé de continuer quand même. Pour la propreté, tu devrais mettre des return false dans tes deux catch(), car il n'y a aucune raison de continuer si t'as des exceptions là.

  20. #20
    Membre du Club
    Inscrit en
    Mai 2008
    Messages
    55
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 55
    Points : 40
    Points
    40
    Par défaut
    Salut et désolé pour le retard de ma réponse.
    Actuellement je ne suis pas encore au stade de la creation du jar.
    Je crois que je commence à m'embrouiller dans la notion de classpath.
    J'ai crée une variable d'environnemt que j'ai appele classpath et qui point vers mes class comme suit export CLASSPATH=/root/workspace/callback/classes. Cette variable represente la classpath d'excecution dont tu parle ou ce chemin doit est different et doit etre indiqué à partir d'eclipse.

    Et je n'ai pas bien compris ta phrase "tu dois ajouter ton jar au classpath d'exécution (l'ajouter au projet eclipse, ne l'ajoute que pour eclipse)".Sinon le jar mysql je l'ai copié à la racine du projet avant de l'ajouter par eclipse.
    Merci

Discussions similaires

  1. Réponses: 1
    Dernier message: 04/01/2013, 13h48
  2. ClassNotFoundException : com.mysql.jdbc.Driver
    Par Jpa75 dans le forum JDBC
    Réponses: 3
    Dernier message: 01/08/2010, 20h15
  3. Réponses: 1
    Dernier message: 16/04/2010, 03h05
  4. Réponses: 6
    Dernier message: 21/11/2009, 13h37
  5. Réponses: 6
    Dernier message: 17/04/2009, 16h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo