需要哪个Oracle jdbc jar

时间:2017-05-27 15:12:52

标签: java oracle tomcat jdbc jar

我在Oracle jdbc下载页面http://www.oracle.com/technetwork/database/enterprise-edition/jdbc-112010-090769.html

中看到了很多jar文件

我已下载以下驱动程序:

  1. ojdbc6.jar
  2. ojdbc6_g.jar
  3. ojdbc6dms.jar
  4. ojdbc6dms_g.jar
  5. orai18n.jar
  6. 我正在尝试在我的Tomcat 7版本中使用它。我将所有这些jar文件添加到$ CATALINA_HOME / lib文件夹中,但几天后我的Tomcat抛出了这个错误:

        HTTP Status 500 - Servlet execution threw an exception
    
    type Exception report
    
    message Servlet execution threw an exception
    
    description The server encountered an internal error that prevented it from fulfilling this request.
    
    exception
    
    javax.servlet.ServletException: Servlet execution threw an exception
        org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    root cause
    
    java.lang.NoSuchMethodError: oracle.i18n.text.converter.CharacterConverterOGS.getInstance(I)Loracle/i18n/text/converter/CharacterConverter;
        oracle.sql.converter.CharacterConverterFactoryOGS.make(CharacterConverterFactoryOGS.java:40)
        oracle.sql.CharacterSetWithConverter.getInstance(CharacterSetWithConverter.java:135)
        oracle.sql.CharacterSetFactoryThin.make(CharacterSetFactoryThin.java:195)
        oracle.sql.CharacterSet.make(CharacterSet.java:555)
        oracle.jdbc.driver.DBConversion.init(DBConversion.java:236)
        oracle.jdbc.driver.DBConversion.<init>(DBConversion.java:133)
        oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1704)
        oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:385)
        oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:564)
        oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:251)
        oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:29)
        oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:563)
        java.sql.DriverManager.getConnection(DriverManager.java:571)
        java.sql.DriverManager.getConnection(DriverManager.java:215)
        DB.getOracleConnection(DB.java:13)
        IndexDAO.displayNewsTicker(IndexDAO.java:54)
        SiteTemplate.newsTicker(SiteTemplate.java:256)
        SiteTemplate.headerButtons(SiteTemplate.java:226)
        Index.doGet(Index.java:55)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:621)
        javax.servlet.http.HttpServlet.service(HttpServlet.java:728)
        org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51)
    note The full stack trace of the root cause is available in the Apache Tomcat/7.0.47 logs.
    
    Apache Tomcat/7.0.47
    

    我的oracle版本是SQL*Plus: Release 11.2.0.2.0 Production我搜索了很多,但大多数专家都在讨论jdbc驱动程序的重复或错误版本。我加倍检查两个建议但同样的问题。

    现在问题出现在我脑海中,我可能会在我的tomcat lib文件夹中添加错误的jar。我的意思是我可能需要1-2个jar文件,但是添加了5个可能有重复类的前面提到的jdbc jar。

    请告知

1 个答案:

答案 0 :(得分:0)

你只需要这个: ojdbc6.jar

  • ojdbc * .jar - 支持Thin和OCI驱动程序基本功能的所有类

  • ojdbc * _g.jar - 与ojdbc * .jar相同,除了使用-g选项编译以包含调试信息和包含java.util.logging调用。

  • ojdbc * dms.jar - 与ojdbc * .jar相同,但包含支持Oracle动态监控服务(DMS)的代码。还包括一些JDBC日志记录支持。仅当dms.jar也在类路径中时,才能使用此文件。 dms.jar文件不作为RDBMS产品的一部分提供。它仅作为Oracle Application Server产品的一部分提供。

  • ojdbc * dms_g.jar - 与ojdbc * dms.jar相同,除了使用-g选项编译以包含调试信息和完整的JDBC日志记录支持。

  • orai18n.jar - 包含支持高级数据类型(对象)中所有Oracle字符集的配置信息。如果数据库字符集不是UCS2,ASCII,ISO_LATIN_1,UTF8和AL32UTF8,并且应用程序使用ADT,则必须在类路径中包含此文件。

从这里采取:Oracle JDBC FAQ