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 :

[JDBC] connexion a oracle


Sujet :

JDBC Java

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut [JDBC] connexion a oracle
    Bonjour,

    J'ai un probleme avec oracle, je travail sur une mandrake 9.2 avec oracle 9.1 release 2 et le jdk 1.4.2 .
    Chaque que s'éxecute le 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
    22
    23
    public class JdbcTest { 
        static final String CONN_URL = "jdbc:oracle:thin:@xx:xx"; 
        static final String USER = "xx"; 
        static final String PASSWD = "x"; 
        public JdbcTest ()   { 
        try
        {
            DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
        }
        catch(Exception e)
        {
        	System.out.println ("ERROR : "+e.getMessage());
        }
        try
        {
            conn=DriverManager.getConnection (CONN_URL, USER, PASSWD);
        }
        catch(Exception e)
        {
        	System.out.println ("ERROR : "+e.getMessage());
        }
      } 
    }
    Je récupére le messages suivant:
    Exception in thread "main" java.lang.NoClassDefFoundError: oracle/jdbc/driver/OracleDriver
    at test.JdbcTest.<init>(JdbcTest.java:23)
    at menu.main(menu.java:7)
    et quand j'éxecute les instructions directement dans un main, je récupère l'erreur suivante:


    Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0


    Merci d'avance pour vos réponses

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 94
    Points : 113
    Points
    113
    Par défaut
    Suppositions :

    1
    Il faut vérifier si t'as bien le .jar de l'oracle ton classpath .

    2
    un tableau ( args de main ? ) est probablement utilisé sans qu'il contient des éléments.

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    voila j'ai cela comme CLASSPATH,

    CLASSPATH=/home/fultrans/test/ojdbc14.jar


    je suppose que c'est bon

    j'ai essayé sans l'argument ça change rien.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Juin 2005
    Messages : 94
    Points : 113
    Points
    113
    Par défaut
    CLASSPATH : c'est bien sa valeur au moment de l'execution
    dans la ligne de commande ou dans un .sh ?

    Tu peux envoyer le code complèt avec main ?( menu.java )

  5. #5
    Membre régulier Avatar de java_fun
    Inscrit en
    Novembre 2004
    Messages
    117
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 117
    Points : 102
    Points
    102
    Par défaut
    bonjour,

    d après ton code java

    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
     
     
    public class JdbcTest { 
        static final String CONN_URL = "jdbc:oracle:thin:@xx:xx"; 
        static final String USER = "xx"; 
        static final String PASSWD = "x"; 
        public JdbcTest ()   { 
        try 
        { 
            DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); 
        } 
        catch(Exception e) 
        { 
           System.out.println ("ERROR : "+e.getMessage()); 
        } 
        try 
        { 
            conn=DriverManager.getConnection (CONN_URL, USER, PASSWD); 
        } 
        catch(Exception e) 
        { 
           System.out.println ("ERROR : "+e.getMessage()); 
        } 
      } 
    }
    j ai une remarque concernant ton URL :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    jdbc:oracle:thin:@ip:port:nom_instance
     :arrow:  ip du serveur oracle
     :arrow:  est le port (  par défaut c 1521)
     :arrow:  le nom de l instance de ta base
    et ta pas besoin d enregister ton driverOracle il suffit d appler Class.forName(oracle.jdbc.driver.OracleDriver);

    avec on plus le jdbc14.zip ajouter au chemin de complilation de ton projet comme jar extene !!

    voila j espere que j ai répondus à ta demande
    Java fun is back

  6. #6
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    3
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci pour le ClassForName mais j'avais deja essayé.

    En fait j'ai une JdbcTest que vous avez deja vue et qui est instancié par la classe menu qui contient un main:

    import test.*;

    public class menu {
    public menu()
    {
    }

    public static void main(String args[]) {
    Menu m = new menu();
    JdbcTest RS = new JdbcTest();
    System.out.println("OKKKKKKKKKKKKKKK");
    }

    a partir de mon portable avec windows et executé sous sun one ce code fonctionne mais quand j'essaye de le lancer sur mon serveur linux pas moyen.

  7. #7
    Membre du Club
    Inscrit en
    Juin 2005
    Messages
    77
    Détails du profil
    Informations forums :
    Inscription : Juin 2005
    Messages : 77
    Points : 50
    Points
    50
    Par défaut
    salut,
    oracle utilise ce qu''on appel : classes12.zip
    donc il faut faire un export CLASSPATH et tu declare le chemain vers classes12.zip
    export CLASSPATH=/home/......./classe12.zip
    bon courage

Discussions similaires

  1. [2.2.2] Problème connexion BDD Oracle JDBC
    Par BlueSky dans le forum BIRT
    Réponses: 6
    Dernier message: 12/03/2008, 15h22
  2. Connexions JDBC vers sgbd Oracle
    Par Reflex77 dans le forum JDBC
    Réponses: 7
    Dernier message: 14/12/2005, 16h02
  3. [JDBC]Connexion distante a SQLServer
    Par FreshVic dans le forum MS SQL Server
    Réponses: 14
    Dernier message: 01/07/2004, 11h06
  4. Connexion SGBD Oracle-SQL langage C/C++
    Par K2004 dans le forum Interfaces de programmation
    Réponses: 4
    Dernier message: 10/02/2004, 19h01
  5. [JDBC][connexion persistante] performances avec JDBC
    Par nawac dans le forum Connexion aux bases de données
    Réponses: 6
    Dernier message: 06/05/2003, 10h37

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