【问题标题】:Unable to connect to oracle via Pentaho. 'oracle.jdbc.driver.OracleDriver' could not be found无法通过 Pentaho 连接到 oracle。找不到“oracle.jdbc.driver.OracleDriver”
【发布时间】:2013-12-22 03:00:18
【问题描述】:

您好,我刚刚安装了 Pentaho Data Integration v. 5.01,我正在尝试连接到数据库。但是,由于出现错误(粘贴在下面),我无法测试连接。

我在系统上也安装了 JDK 1.7,但是我似乎无法在任何地方找到 ojdbc14.jar。

我下载了它并将它粘贴到 pentaho 的 \lib 文件夹中,但我仍然遇到同样的错误。

有解决这个问题的办法吗?

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

【问题讨论】:

    标签: java oracle jdbc oracle11g pentaho


    【解决方案1】:

    在我的情况下,错误出现在 报告设计器

    修复:仅将 ojdbc14.jar 复制到

    \prd-ce-5.0.1-stable\report-designer\lib

    并重新启动工具。

    【讨论】:

      【解决方案2】:

      尝试将 odbc jar 文件(例如:ojdbc5-11.1.0.7.0.jar)放在安装的“data-integration/lib”目录中。不要忘记重新启动 Pentaho 以使其工作。

      【解决方案3】:

      我可以通过选择 Oralce Native connection > Hostname as Ip address of DB server > 而不是 SN00XXXX 来解决这个问题,我使用 DB00XXX 名称作为数据库名称。

      我希望这适用于 Oracle 连接的此类问题。

      【讨论】:

        【解决方案4】:

        尝试将jar放到tomcat库文件夹中,然后重启Pentaho。

        应该在这里.../biserver-ce-6.0.0.0-353/biserver-ce/tomcat/lib

        这里已经有一些驱动了。

        【讨论】:

          【解决方案5】:

          在 Pentaho 6.0 版中,将驱动程序 (ojdbc6.jar) 放入:“PentahoInstallation”\design-tools\data-integration\lib 并重新启动 Data Integration ide。

          【讨论】:

            【解决方案6】:
            1. 首先访问 Oracle 站点: http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html

            2. 下载 1 个文件:ojdbc6.jar (2,739,670 字节)-(SHA1 校验和:a483a046eee2f404d864a6ff5b09dc0e1be3fe6c) 用于 JDK 1.6 的类。它包含 JDBC 驱动程序类,但在 Oracle 对象和集合类型中支持 NLS 的类除外。

            3. 复制到 Pentaho 文件夹:C:\Program Files\Pentaho\data-integration\lib

            这适用于我的带有最新 Pentaho 5.3 Stable 的 Windows 7 X64 Pro。

            【讨论】:

            • 4.关闭勺子,如果它是打开的,然后重新打开。这是我缺少的一步
            【解决方案7】:

            这是我的设置。我遇到了这个问题并设法解决了它。

            我在我的机器上运行了 SQLDeveloper,它工作正常,即使在 VPN 下也是如此。但是,我在运行 Spoon 时发现,如果我使用 VPN,它将无法工作。

            我尝试将 SQLDeveloper 附带的 Oracle JDBC 驱动程序放入 Pentaho。那没用。

            但是,我注意到 SQLDeveloper 和 Spoon 之间的一大区别是它们使用不同的 Java 运行时和 JDBC Oracle 驱动程序!特别是,我的 SQLDeveloper 版本在 32 位 JRE 版本 1.6.0_11 上运行,而我的系统范围 JDK 是 64 位版本 1.7.0_03。

            我找到了 SQLDeveloper 使用的 JDBC 驱动程序,并将它们用作 Spoon 附带的驱动程序的替代品 -- 没有变化

            然后我重新定位 Spoon 以使用 SQLDeveloper 使用的 Java 运行时。

            我设置了两个环境变量:PENTAHO_JAVA 和 PENTAHO_JAVA_HOME -- 现在可以正常工作了!

            作为参考,这是我的环境变量:

            PENTAHO_JAVA=C:\opt\sqldeveloper\jdk\jre\bin\java.exe
            PENTAHO_JAVA_HOME=c:\opt\sqldeveloper\jdk\jre\
            

            如果相关,我使用的是 Windows 7 x64。

            【讨论】:

            • 感谢您的回复!我找到了解决办法。我的系统上已经有了 Pentaho 4.1.0 的运行版本。导致问题的是 5.0.1。所以我所做的是,我从 4.1 复制了所有 /lib* 文件夹并将其粘贴到 5.0.1 的同一位置。它奏效了!下次遇到这种情况,我试试你的方法!
            【解决方案8】:

            看,伙计们,我们不需要所有这些东西。我们需要将oracle jdbc驱动(ojdbc6.jar)粘贴到以下位置。

            1. C:\Program Files\pentaho\design-tools\report-designer\lib\jdbc
            2. C:\Program Files\pentaho\design-tools\data-integration\lib
            3. C:\Program Files\pentaho\design-tools\aggregation-designer\lib
            4. C:\Program Files\pentaho\design-tools\schema-workbench\lib

            【讨论】:

              【解决方案9】:

              尝试将 ojdbc 驱动程序放入您的 PDI 路径(位置)中的 libext/JDBC 中

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 2015-03-12
                • 2016-06-10
                • 1970-01-01
                • 2014-11-24
                • 2015-01-08
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多