web-dev-qa-db-fra.com

Impossible de se connecter à Oracle via Pentaho. 'Oracle.jdbc.driver.OracleDriver' est introuvable

Bonjour, je viens d'installer Pentaho Data Integration v. 5.01 et j'essaie de me connecter à une base de données. Cependant, je ne peux pas tester la connexion car j'obtiens l'erreur (collée ci-dessous).

JDK 1.7 est également installé sur le système, mais il semble impossible de localiser ojdbc14.jar. 

J'ai téléchargé cela et je l'ai collé dans le dossier\lib de pentaho mais j'obtiens toujours la même erreur.

Des solutions à ce problème?

Error connecting to database [test] : org.pentaho.di.core.exception.KettleDatabaseException: 
Error occured while trying to connect to the database

Driver class 'Oracle.jdbc.driver.OracleDriver' could not be found, make sure the 'Oracle' driver (jar file) is installed.
Oracle.jdbc.driver.OracleDriver


org.pentaho.di.core.exception.KettleDatabaseException: 
Error occured while trying to connect to the database

Driver class 'Oracle.jdbc.driver.OracleDriver' could not be found, make sure the 'Oracle' driver (jar file) is installed.
Oracle.jdbc.driver.OracleDriver


    at org.pentaho.di.core.database.Database.normalConnect(Database.Java:415)
    at org.pentaho.di.core.database.Database.connect(Database.Java:353)
    at org.pentaho.di.core.database.Database.connect(Database.Java:306)
    at org.pentaho.di.core.database.Database.connect(Database.Java:294)
    at org.pentaho.di.core.database.DatabaseFactory.getConnectionTestReport(DatabaseFactory.Java:84)
    at org.pentaho.di.core.database.DatabaseMeta.testConnection(DatabaseMeta.Java:2459)
    at org.pentaho.ui.database.event.DataHandler.testDatabaseConnection(DataHandler.Java:541)
    at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at Sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at Java.lang.reflect.Method.invoke(Unknown Source)
    at org.pentaho.ui.xul.impl.AbstractXulDomContainer.invoke(AbstractXulDomContainer.Java:329)
    at org.pentaho.ui.xul.impl.AbstractXulComponent.invoke(AbstractXulComponent.Java:139)
    at org.pentaho.ui.xul.impl.AbstractXulComponent.invoke(AbstractXulComponent.Java:123)
    at org.pentaho.ui.xul.swt.tags.SwtButton.access$500(SwtButton.Java:26)
    at org.pentaho.ui.xul.swt.tags.SwtButton$4.widgetSelected(SwtButton.Java:121)
    at org.Eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source)
    at org.Eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
    at org.Eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
    at org.Eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
    at org.Eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
    at org.Eclipse.jface.window.Window.runEventLoop(Window.Java:820)
    at org.Eclipse.jface.window.Window.open(Window.Java:796)
    at org.pentaho.ui.xul.swt.tags.SwtDialog.show(SwtDialog.Java:375)
    at org.pentaho.ui.xul.swt.tags.SwtDialog.show(SwtDialog.Java:301)
    at org.pentaho.di.ui.core.database.dialog.XulDatabaseDialog.open(XulDatabaseDialog.Java:115)
    at org.pentaho.di.ui.core.database.dialog.DatabaseDialog.open(DatabaseDialog.Java:62)
    at org.pentaho.di.ui.spoon.delegates.SpoonDBDelegate.newConnection(SpoonDBDelegate.Java:493)
    at org.pentaho.di.ui.spoon.delegates.SpoonDBDelegate.newConnection(SpoonDBDelegate.Java:478)
    at org.pentaho.di.ui.spoon.Spoon.doubleClickedInTree(Spoon.Java:2885)
    at org.pentaho.di.ui.spoon.Spoon.access$2300(Spoon.Java:332)
    at org.pentaho.di.ui.spoon.Spoon$27.widgetDefaultSelected(Spoon.Java:5657)
    at org.Eclipse.swt.widgets.TypedListener.handleEvent(Unknown Source)
    at org.Eclipse.swt.widgets.EventTable.sendEvent(Unknown Source)
    at org.Eclipse.swt.widgets.Widget.sendEvent(Unknown Source)
    at org.Eclipse.swt.widgets.Display.runDeferredEvents(Unknown Source)
    at org.Eclipse.swt.widgets.Display.readAndDispatch(Unknown Source)
    at org.pentaho.di.ui.spoon.Spoon.readAndDispatch(Spoon.Java:1227)
    at org.pentaho.di.ui.spoon.Spoon.waitForDispose(Spoon.Java:7368)
    at org.pentaho.di.ui.spoon.Spoon.start(Spoon.Java:8673)
    at org.pentaho.di.ui.spoon.Spoon.main(Spoon.Java:625)
    at Sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at Sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at Sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at Java.lang.reflect.Method.invoke(Unknown Source)
    at org.pentaho.commons.launcher.Launcher.main(Launcher.Java:134)
Caused by: org.pentaho.di.core.exception.KettleDatabaseException: 
Driver class 'Oracle.jdbc.driver.OracleDriver' could not be found, make sure the 'Oracle' driver (jar file) is installed.
Oracle.jdbc.driver.OracleDriver

    at org.pentaho.di.core.database.Database.connectUsingClass(Database.Java:474)
    at org.pentaho.di.core.database.Database.normalConnect(Database.Java:399)
    ... 45 more
Caused by: Java.lang.ClassNotFoundException: Oracle.jdbc.driver.OracleDriver
    at Java.net.URLClassLoader$1.run(Unknown Source)
    at Java.net.URLClassLoader$1.run(Unknown Source)
    at Java.security.AccessController.doPrivileged(Native Method)
    at Java.net.URLClassLoader.findClass(Unknown Source)
    at Java.lang.ClassLoader.loadClass(Unknown Source)
    at Java.lang.ClassLoader.loadClass(Unknown Source)
    at org.pentaho.di.core.database.Database.connectUsingClass(Database.Java:467)
    ... 46 more
12
Joshua1729

Voici ma configuration. J'ai eu ce problème et j'ai réussi à le résoudre comme suit.

J'ai SQLDeveloper en cours d'exécution sur ma machine et cela fonctionne bien, même sous VPN. Cependant, je courais Spoon et j'ai remarqué que cela ne fonctionnerait pas si j'utilisais un VPN.

J'ai essayé de mettre les pilotes JDBC Oracle fournis avec SQLDeveloper dans Pentaho. Ça n'a pas marché.

Cependant, j'ai remarqué qu'une grosse différence entre SQLDeveloper et Spoon est qu'ils utilisent des runtimes différentsJava et des pilotes JDBC Oracle! En particulier, ma version de SQLDeveloper s'exécute sur la version 1.6.0_11 de JRE 32 bits, alors que mon JDK à l'échelle du système est la version 1.7.0_03 à 64 bits.

J'ai trouvé les pilotes JDBC utilisés par SQLDeveloper et les ai utilisés en remplacement du pilote fourni avec Spoon - pas de modification .

Ensuite, j'ai re-ciblé Spoon pour utiliser le runtime Java utilisé par SQLDeveloper.

J'ai défini deux variables d'environnement: PENTAHO_Java et PENTAHO_Java_HOME - et cela fonctionne maintenant!

Pour référence, voici mes envvars:

PENTAHO_Java=C:\opt\sqldeveloper\jdk\jre\bin\Java.exe
PENTAHO_Java_HOME=c:\opt\sqldeveloper\jdk\jre\

Si cela est pertinent, je suis sur Windows 7 x64.

5
Artyom Shalkhakov

Essayez de placer le fichier odbc jar (par exemple: ojdbc5-11.1.0.7.0.jar) dans le répertoire "data-integration / lib " de votre installation. N'oubliez pas de redémarrer Pentaho pour que cela fonctionne.

15
user_sk
  1. D'abord, allez sur le site Oracle: http://www.Oracle.com/technetwork/database/features/jdbc/index-091264.html

  2. Téléchargez 1 fichier: ojdbc6.jar (2 739 670 octets) - (SHA1 Checksum: a483a046eee2f404d864a6ff5b09dc0e1be3fe6c) Classes à utiliser avec JDK 1.6. Il contient les classes de pilotes JDBC, à l'exception des classes pour la prise en charge de NLS dans les types Oracle Object et Collection.

  3. Copiez-le dans le dossier Pentaho: C:\Program Files\Pentaho\data-integration\lib

Cela fonctionne sur mon Windows 7 X64 Pro avec la dernière version stable de Pentaho 5.3.

6
Lambert

Dans Pentaho version 6.0, placez le pilote (ojdbc6.jar) dans: "PentahoInstallation"\design-tools\data-integration\lib et redémarrez l'ide d'intégration de données.

2
Marcel Fernandez

Vous voyez, les gars, on n'a pas besoin de tout ça. Nous devons coller le pilote Oracle jdbc (ojdbc6.jar) à l'emplacement suivant.

  1. C:\Program Files\pentaho\outils de conception\rapport-designer\lib\jdbc
  2. C:\Program Files\pentaho\outils de conception\intégration de données\lib
  3. C:\Program Files\pentaho\outils-de-conception\agrégation-concepteur\lib
  4. C:\Program Files\pentaho\outils de conception\schema-workbench\lib
1
user3472048

essayez de mettre le pilote jdbc dans libext/JDBC dans votre chemin PDI (emplacement)

0
DGA

Essayez de placer le fichier jar dans le dossier de la bibliothèque Tomcat, puis redémarrez Pentaho.

Devrait être ici .../biserver-ce-6.0.0.0-353/biserver-ce/Tomcat/lib

Il y a déjà quelques pilotes ici.

0
Thomas Decaux

Je pouvais résoudre ce problème en sélectionnant Connexion Oralce Native> Nom d'hôte en tant qu'adresse IP du serveur de base de données> au lieu de SN00XXXX, j'avais utilisé le nom DB00XXX pour le nom de la base de données. 

J'espère que cela fonctionne pour de tels problèmes avec la connectivité Oracle.

0
DJ6968