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

avec Java Discussion :

connexion pont jdbc-obdc ne fonctionne que dans eclipse


Sujet :

avec Java

  1. #1
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2018
    Messages : 7
    Points : 3
    Points
    3
    Par défaut connexion pont jdbc-obdc ne fonctionne que dans eclipse
    Bonjour,

    Je fait une application pour exploiter les données d'une base ODBC, et étant sur JRE 1.7 j'ai commencé en utilisant le pont jdbc odbc.
    Dans eclipse pas de problème l'extraction se passe bien mais au moment de la compilation ça ne fonctionne plus.

    J'ai ajouté le rt.jar de façon explicite dans le build path, ce qui m'a permis de ne pas avoir d'erreur jusqu'à la connexion. Mais au moment de la connexion j'ai une java.sql.SQLException : no suitable driver found for jdbc:odbc:GESTPRO

    Je pioche depuis un moment, et là je n'ai plus d'idée...


    mon code :

    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
    	Class<?> c =null;
    	Driver d = null;
    	Connection con = null;
    				try {
    						c = Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    						d = (Driver) c.newInstance();
    						DriverManager.registerDriver(d);
     
                                                     connexion.setText(d.toString());
    					} catch (SQLException |IllegalAccessException |InstantiationException |ClassNotFoundException e) {
    								connexion.setText(e.toString());
    					}
     
    		String DBurl = "jdbc:odbc:GESTPRO";
     
     
    		try {
    			Enumeration<Driver> test = DriverManager.getDrivers();
    			connexion.setText(test.nextElement().toString());
     
    			con = DriverManager.getConnection(DBurl,"","");


    si quelqu'un a une piste je suis preneur, parce que là c'est vraiment le désespoir

  2. #2
    Membre habitué Avatar de Pecose
    Homme Profil pro
    Batiment
    Inscrit en
    Février 2013
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Batiment
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2013
    Messages : 310
    Points : 194
    Points
    194
    Par défaut
    Bonjour.
    T'es sur que ça viens pas du fait que t'ai pas tout mis dans le même try?

    Si c'est pas ça, je lève les main, ne tirez pas, je donne juste une piste.
    Des jours c'est facile, des jours c'est pas facile, mais c'est jamais le même jour.

  3. #3
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2018
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Merci d'avoir essayé, j'ai tout mis dans le même "bloc" try catch et j'ai le même résultat. Tout fonctionne dans eclipse mais plus une fois compilé...

    Belle tentative.

  4. #4
    Membre habitué Avatar de Pecose
    Homme Profil pro
    Batiment
    Inscrit en
    Février 2013
    Messages
    310
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Batiment
    Secteur : Bâtiment

    Informations forums :
    Inscription : Février 2013
    Messages : 310
    Points : 194
    Points
    194
    Par défaut
    What????
    Ça viens pas du code alors?
    C'est pas de mon niveau du coup, j'espère que tu vas t'en sortir, bon courage.
    Des jours c'est facile, des jours c'est pas facile, mais c'est jamais le même jour.

  5. #5
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2018
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Merci en tout cas, un problème difficile j'en ai peur.
    J'ai lu rapidement qu'il pouvait y avoir un problème du à la version de windows. Je suis sous win 7 si ça peut aider

  6. #6
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2018
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    je viens de vérifier la présence de JdbcOdbc.dll dans le répertoire de windows. Il est dans C:\Windows\ccmcache\c2\jre_6.0.0.sr9_20110208_03\jre\bin.

  7. #7
    Membre expérimenté Avatar de Cincinnatus
    Homme Profil pro
    Développeur d'applications métier
    Inscrit en
    Mars 2007
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur d'applications métier
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2007
    Messages : 592
    Points : 1 679
    Points
    1 679
    Par défaut
    Citation Envoyé par jerome3110 Voir le message
    je viens de vérifier la présence de JdbcOdbc.dll dans le répertoire de windows. Il est dans C:\Windows\ccmcache\c2\jre_6.0.0.sr9_20110208_03\jre\bin.
    Bonjour,

    Tu as dit :
    étant sur JRE 1.7
    et la dll est dans le JRE 6.

    Il manque donc un jar connu de ton projet en Java 7, non ?
    (A mettre dans le buildpath)

    [EDIT] Je viens de relire le début
    rt.jar de façon explicite dans le build path,
    Ok pour le jar, donc. reste à trouver la bonne version du Jar et la dll correspondante.
    Bon courage, on dirait que ça n'est plus disponible. Sauf peut-être ici : http://ucanaccess.sourceforge.net/site.html
    cf https://www.developpez.net/forums/d1...reur-debutant/

  8. #8
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2018
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Tu as raison Cincinnatus, je n'y ai pas prêter attention, je vais tenter de copier la dll dans le répertoire de la bonne jre, je test ça demain, je vous redis, mais je le sent bien ce coup là

  9. #9
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2018
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Ce que j'ai fait, j'ai installé une JRE 6, remanier un peu mon code pour que ça passe.
    Bon, j'ai bien le JdbcOdbc.dll dans la VM (se coup ci dans la jre6).
    J'ai du intégrer la rt.jar au build Path pour que le driver soit reconnu.
    J'ai lancé, très curieusement dans eclipse l’exécution se passe bien avec affichage de résultat, et une fois compilé je n'ai plus d'erreur SQL, mais je n'ai pas d'affichage de résultat.

    J'ai mis un affichage derrière la connexion, il ne s'affiche pas. j'ai donc mon code qui se bloque mais sans erreur...
    J'ai attendu quelque minute pour voir si j'avais un time out, mais non. C'est à ni rien comprendre.

    Enumeration<Driver> test = DriverManager.getDrivers();
    connexion.setText(test.nextElement().toString()); //J'ai l'affichage du nom de driver
    con = DriverManager.getConnection(DBurl);
    connexion.setText(connexion.getText()+"conOk"); //mais ce message ne s'affiche pas

  10. #10
    Candidat au Club
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Décembre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Vosges (Lorraine)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2018
    Messages : 7
    Points : 3
    Points
    3
    Par défaut resolu
    Devant l'évidence de la différence de VM entre eclipse et l'exécution, j'ai essayé le code suivant :

    System.getProperty("java.home");

    et je me suis aperçu que la JVM d'exécution était en 1.8 ...

    J'ai donc fait un fichier .bat pour utiliser la même VM qu'en débogage. Ce fichier .bat contient le code suivant :

    @echo off
    set path=C:\Program Files (x86)\Java\jre7\bin;%path%
    java -version
    start javaw -jar ressource.jar
    exit

    je suis repassé en jre7 et je n'ai plus besoin de charger le rt.jar dans le buildPath.

    le .bat doit être dans le même dossier que mon jar que j'ai rebaptisé ressource.

    J'en ai enfin terminé, je vous remercie tous pour les pistes que vous m'avez montrées.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Port série] [QExtSerialPort] write() ne fonctionne que dans certains cas
    Par sybe30 dans le forum Bibliothèques
    Réponses: 1
    Dernier message: 14/12/2012, 19h27
  2. Réponses: 6
    Dernier message: 05/06/2009, 15h20
  3. Tétraèdrisation ne fonctionne que dans certains cas
    Par Rafy dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 15/12/2008, 20h51
  4. Effet fondu ne fonctionne que dans un sens
    Par Gaspoute dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 21/01/2008, 10h24
  5. [XP] Bureau à distance ne fonctionne que dans un sens
    Par beegees dans le forum Windows XP
    Réponses: 5
    Dernier message: 09/07/2006, 09h49

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