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 :

probléme de création de machine virtuelle


Sujet :

JDBC Java

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut probléme de création de machine virtuelle
    Salem,
    je suis débutante en java et j'ai un probléme dans mon code.
    je lance d'abord la commande suivante:>javac mon.java
    tous se passe bien.
    mais lorsque je lance >java mon
    le message d'erreur suivant me parait: "Exception in thread "main" java.lang.NoClassDefFoundError: mon"
    je lance la commande suivante >java -'CLASSPATH direct' mon"
    le message d'erreur suivant me parait:
    "Unrecognized option: -CLASSPATH direct
    Could not create the Java virtual machine."
    je travaille sur openSuse10.3.
    je vérifie l'existence de la machine virtuelle avec yast et je trouve qu'elle est installé.
    SVP aidez-moi

  2. #2
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Bonjour,
    Otes les guillements que tu mets avant CLASSPATH et après ...
    Et c'est quoi direct ?


    P.S. Les conventions de nommage en Java ... c'est bien !

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut classpath - direct
    Salem,
    je les met juste pour éliminer le 1 er message d'erreur.

  4. #4
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Bonjour,

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut echec pilote : java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
    je dépasse le premier probléme.
    bon mon erreur est que je met le nom du classe mon1 et le nom du fichier mon.
    maintenant il me parait un autre probléme.
    lorsque je lance l'exécution (java mon1) le message d'erreur suivant me parait:
    "echec pilote : java.lang.ClassNotFoundException: com.mysql.jdbc.Driver"
    je lance la commande suivante:
    export CLASSPATH=${CLASSPATH}:/usr/lib/mysql-connector-java-5.0.7-bin.jar
    et puis je relance l'exécution et voila le 2 eme message d'erreur qui me parait:
    echec pilote : com.mysql.jdbc.CommunicationsException: Communications link failure due to underlying exception:

    ** BEGIN NESTED EXCEPTION **

    java.net.ConnectException
    MESSAGE: Connection refused

    STACKTRACE:

    java.net.ConnectException: Connection refused
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
    at java.net.Socket.connect(Socket.java:519)
    at java.net.Socket.connect(Socket.java:469)
    at java.net.Socket.<init>(Socket.java:366)
    at java.net.Socket.<init>(Socket.java:208)
    at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256)
    at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:271)
    at com.mysql.jdbc.Connection.createNewIO(Connection.java:2744)
    at com.mysql.jdbc.Connection.<init>(Connection.java:1553)
    at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285)
    at java.sql.DriverManager.getConnection(DriverManager.java:525)
    at java.sql.DriverManager.getConnection(DriverManager.java:171)
    at testsql1.main(testsql1.java:28)


    ** END NESTED EXCEPTION **



    Last packet sent to the server was 0 ms ago.

  6. #6
    Membre chevronné
    Homme Profil pro
    Directeur technique
    Inscrit en
    Janvier 2007
    Messages
    1 348
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 348
    Points : 1 787
    Points
    1 787
    Par défaut
    Connection refused : ton serveur mysql n'est pas disponible (pas le bon port) à priori. Vérifies le code de ta connexion et essaye de te connecter avec un client mysql "à la main"

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut le meme probléme
    comment je peux vérifier le port.
    dans la compilation d'un fichier .c avec gcc j'utilise l'option -lmysqlclient
    mais lorsque je fais ça avec java il ne marche pas de plus j'essai d'utiliser les options -client ,-hotspot,-server mais le meme message d'erreur me parait.
    voila le code dont j'essai d'exécuter


    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
    import java.sql.*;
     
    class mon1{
            public static void main(String[] args){
     
                   //Nom de mon pilote
     
                    String pilote = "com.mysql.jdbc.Driver";
                    try{
     
                            //Chargement de mon pilote
     
                            Class.forName(pilote);
     
                            //Connexion à ma base mysql avec mon login et mot de passe ( à vous de changer cela)
     
                            Connection connexion = DriverManager.getConnection("jdbc:mysql://localhost/erreur","root","");
     
                            //Création de mon statement qui va me permettre d'executer mes requetes
     
                            Statement instruction = connexion.createStatement();
     
                            //Ma table s'appelle coffees et tout ce qui reste dépend d'elle
     
                            //Vous devez changer certaines infos comme le nom de la table et celui des colonnes
     
                            ResultSet resultat = instruction.executeQuery("SELECT * FROM erreur");
                            while(resultat.next()){
     
                                    System.out.println("---------------------------");
     
                                    System.out.println("1 er champ: "+resultat.getString("code"));
     
                                            System.out.println("2 eme champs: "+resultat.getInt("mess"));
                            } 
                    }
                    catch (Exception e){      
     
                            System.out.println("echec pilote : "+e);
                    }
            }
     
    }
    Merci

  8. #8
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Vérifies que mysql tourne déjà:
    Dans la console, tapes:
    Pour voir si tu peux t'y connecter, indépendamment de Java.

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut mysql tourne
    salem,
    merci beaucoups pour votre intérêt.
    oui mysql tourne bien.je lance la commande "/etc/init.d/mysql start" avant de faire n'importe quel tache

  10. #10
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Attends, juste pour m'en assurer, quel jvm tu utilises ? Pas la GCJ j'espère ?

  11. #11
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut jvm
    salem,
    j'utilise le yast pour installer tous ce qui conçerne le java et voila ce que je le cocher dans l'installation java-1_4_2_cacao java virtual machine de version 0.97 mais à cause de dépendance il coche les cases qui ont les noms suivants java-1_4_2-gcj-compact(jpackage runtime scripts for gcj).
    mais en exécution parfois il m'écrit qu'il ne peut pas créer le virtuel machine.

  12. #12
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Réessais en installant plutôt l'une des JVM suivantes:
    - OpenJDK
    - IcedTea (qui est devenu OpenJDK, mais on sait jamais)
    - Sun-jdk

  13. #13
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut
    salem,
    j'ai ecj comme jdk.
    je trouve pas une version d'openjdk ni sun-jdk pour opensuse10.3.
    je pense que mon probléme est un probléme d'installation de mysql-connector-java.
    je lance plusieurs fois la commande:
    export CLASSPATH=${CLASSPATH}:/usr/lib/mysql-connector-java-5.0.7-bin.jar

  14. #14
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut compatibilité
    salem,
    j'ai utilisé la version java suivante:
    java version "1.5.0_12"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_12-b04)
    Java HotSpot(TM) Server VM (build 1.5.0_12-b04, mixed mode)
    et la version mysql suivant:
    mysql Ver 14.12 Distrib 5.0.45, for suse-linux-gnu (i686) using readline 5.2
    et la version mysql-connector est:
    mysql-connector-java-5.0.7-bin.jar
    ces versions sont ils compatibles

  15. #15
    Expert éminent
    Avatar de djo.mos
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    4 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 4 666
    Points : 7 679
    Points
    7 679
    Par défaut
    Citation Envoyé par djo.mos Voir le message


    Vérifies que mysql tourne déjà:
    Dans la console, tapes:
    Pour voir si tu peux t'y connecter, indépendamment de Java.
    Ca donne quoi ce test ?

  16. #16
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut
    il me donne que mysql tourne.
    je peux connecter tous mes bases.
    je pense que ce probléme est du au mysql-connector-java.jar car je pense que ces lignes
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
    .......................
    se trouvent dans le .jar.
    n'est ce pas

  17. #17
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut
    salem,
    je pense qu'il n'y a pas un pb du jdk car j'essai d'exécuter un code de helloworld
    et ça marche bien.
    SVP aidez-mois car j'ai passé trop de temps dans cette erreur.

  18. #18
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut ouverture du port
    salem,
    je lance la commande suivante:
    nmap 127.0.0.1 -p 3306
    et je trouve comme résultat
    Starting Nmap 4.20 ( http://insecure.org ) at 2008-05-22 10:51 CEST
    Interesting ports on localhost (127.0.0.1):
    PORT STATE SERVICE
    3306/tcp closed mysql

    Nmap finished: 1 IP address (1 host up) scanned in 0.043 seconds
    pour cela je veux ouvrir le port mais je sais pas comment.
    j'ai lancé mysql .
    mais le port reste fermé
    j'utlise comme OS linux:opensuse 10.3

  19. #19
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    354
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Tunisie

    Informations forums :
    Inscription : Février 2008
    Messages : 354
    Points : 139
    Points
    139
    Par défaut probléme du port 3306
    Salem,
    j'ai enfin résoud mon probléme.
    le probléme est un probléme de port(port 3306 est fermé).
    pour l'ouvrir il suffit que le fichier my.cnf(se trouvant généralement sous le répertoire /etc) contient le message au dessous

    [client]
    port=3306
    socket=/var/lib/mysql/mysql.sock

    [mysqld]
    port=3306
    socket=/var/lib/mysql/mysql.sock
    datadir=/var/lib/mysql
    set-variable = tmp_table_size=35M
    set-variable = key_buffer_size=64M
    set-variable = table_cache=256k
    set-variable = sort_buffer=4M
    set-variable = record_buffer=1M
    set-variable = max_allowed_packet=24M

  20. #20
    Nouveau membre du Club Avatar de mascoco
    Profil pro
    chef
    Inscrit en
    Octobre 2006
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : chef

    Informations forums :
    Inscription : Octobre 2006
    Messages : 66
    Points : 25
    Points
    25
    Par défaut
    Salem,
    à mon avis tu dois passer un PORT dans l'URL même si tu es en locale.
    exp : si je me trompe pas le port locale par défaut est 1099 mais tu peut en mettre d'autre par exp 3306, à condition que ce port ne soit pas déjà réservé ou utilisé par une autre application. (essaie d'autres port dans ce cas).

    essaie:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Connection connexion = DriverManager.getConnection("jdbc:mysql://localhost:3306/erreur","root","");
    et n'oublie pas de lancer mysql avant le programme, ça devrait marcher

    Mehdi.


    Citation Envoyé par moooona Voir le message
    comment je peux vérifier le port.
    dans la compilation d'un fichier .c avec gcc j'utilise l'option -lmysqlclient
    mais lorsque je fais ça avec java il ne marche pas de plus j'essai d'utiliser les options -client ,-hotspot,-server mais le meme message d'erreur me parait.
    voila le code dont j'essai d'exécuter


    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
    import java.sql.*;
     
    class mon1{
            public static void main(String[] args){
     
                   //Nom de mon pilote
     
                    String pilote = "com.mysql.jdbc.Driver";
                    try{
     
                            //Chargement de mon pilote
     
                            Class.forName(pilote);
     
                            //Connexion à ma base mysql avec mon login et mot de passe ( à vous de changer cela)
     
                            Connection connexion = DriverManager.getConnection("jdbc:mysql://localhost/erreur","root","");
     
                            //Création de mon statement qui va me permettre d'executer mes requetes
     
                            Statement instruction = connexion.createStatement();
     
                            //Ma table s'appelle coffees et tout ce qui reste dépend d'elle
     
                            //Vous devez changer certaines infos comme le nom de la table et celui des colonnes
     
                            ResultSet resultat = instruction.executeQuery("SELECT * FROM erreur");
                            while(resultat.next()){
     
                                    System.out.println("---------------------------");
     
                                    System.out.println("1 er champ: "+resultat.getString("code"));
     
                                            System.out.println("2 eme champs: "+resultat.getInt("mess"));
                            } 
                    }
                    catch (Exception e){      
     
                            System.out.println("echec pilote : "+e);
                    }
            }
     
    }
    Merci
    --
    The Opening of the source helps humanity

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 5
    Dernier message: 26/09/2014, 14h12
  2. Problème d'affichage sur machine virtuelle Linux (Ubuntu)
    Par fafa63 dans le forum Virtualisation
    Réponses: 10
    Dernier message: 13/06/2014, 16h05
  3. probléme detection wifi sur machine virtuel
    Par mayssaMM dans le forum Android
    Réponses: 0
    Dernier message: 06/03/2014, 12h32
  4. Problème de droit sur machine virtuelle - Cluster Hyper-V
    Par Alexis78 dans le forum Virtualisation
    Réponses: 0
    Dernier message: 28/12/2011, 17h59
  5. problème de connexion de machines virtuelles
    Par mptijr dans le forum Windows XP
    Réponses: 7
    Dernier message: 21/05/2010, 20h01

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