环境:JDK1.6 , oracle 10g, tomcat7.0, oracle的驱动:ojdbc14.jar 放入tomcat的lib中,访问报错, 然后又找了ojdbc6.jar放入,还是报同样的错误,
说是找不到合适的驱动,控制台错误如下:org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot create JDBC driver of class 'oracle.jdbc.OracleDriver' for connect URL 'jdbc:oracle:thin@xiaoePC:1521:orcl'
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1452)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1371)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
at data.access.Struts1.<init>(Struts1.java:21)
at data.access.searchProduct.<init>(searchProduct.java:12)
at action.SearchProductAction.execute(SearchProductAction.java:17)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:928)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:539)
at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1815)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.sql.SQLException: No suitable driver
at java.sql.DriverManager.getDriver(DriverManager.java:264)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.createConnectionFactory(BasicDataSource.java:1437)
... 27 more求大侠帮忙:

解决方案 »

  1.   

    oracle.jdbc.driver.OracleDrive   --ojdbc14.jar  你的driver_class写错啦 ,
    try {
    Class.forName("oracle.jdbc.driver.OracleDrive");
         } catch (Exception e) {
    e.printStackTrace();
    }
      

  2.   

    Cannot create JDBC driver of class 'oracle.jdbc.driver.OracleDriver' for connect URL 'jdbc:oracle:thin@xiaoePC:1521:orcl'还是一样的,
    tomcat 的文档里面是这样的For Oracle 9i onwards you should use oracle.jdbc.OracleDriver rather than oracle.jdbc.driver.OracleDriver as Oracle have stated that oracle.jdbc.driver.OracleDriver is deprecated and support for this driver class will be discontinued in the next major release. 9i以后推荐 oracle.jdbc.OracleDriver,
    谢谢你的回答;
      

  3.   

    private Connection getConn() {
    try {
    Class.forName(driver);
    Connection conn = DriverManager.getConnection(url, userName,
    password);
    return conn;
    } catch (Exception e) {
    e.printStackTrace();
    }
    return null;
    }driver=oracle.jdbc.driver.OracleDriver
    url=jdbc:oracle:thin:@192.168.0.11:1521:AA
    username=aa
    password=aa俺的这样子是可以的 具体就不清楚了
      

  4.   

    这个好像不是jar包的问题吧!你的oracle配置可能不对,不能连接到数据库
      

  5.   

                    <Context path="/Struts1" docBase="Struts1" debug="0" reloadable="true">
    <Resource name="oracledata" auth="Container" type="javax.sql.DataSource"

    driverClassName="oracle.jdbc.OracleDriver"
    maxActive="20"
    maxIdle="30"
    maxWait="10000"
    username="scott"
    password="oracle"
    url="jdbc:oracle:thin@xiaoePC:1521:orcl"
    description="myDataSource for JDBC Applications"/>

    </Context>这是tomcat连接池的配置,
    下面是web.xml的配置
     <resource-ref>
       <description>Oracle Datasource </description>
       <res-ref-name>oracledata</res-ref-name>
       <res-type>javax.sql.DataSource</res-type>
       <res-auth>Container</res-auth>
    </resource-ref>控制台中说的是没有合适的驱动。
      

  6.   

    url="jdbc:oracle:thin@xiaoePC:1521:orcl",哇,原来是这里的错,thin后面少了个:
    字符串长了很容易忽略错误,谢谢你们,结贴。