java.sql.SQLException: No suitable driver on tomcat 8.5

1.2k views Asked by At

I'm getting an exception when i start application on tomcat on eclipse.

Version

ojdbc7-12.1.0.1.jar    
apache-tomcat-8.5.31
jdk-8u172-windows-x64

Spring config

<bean id="dataSource" class="org.apache.commons.dbcp2.BasicDataSource" destroy-method="close">
     <property name="driverClassName" value="oracle.jdbc.OracleDriver" />
     <property name="url" value="${database.connection.url}" />
     <property name="username" value="${database.user}" />
     <property name="password" value="${database.pwd}" />
     <property name="initialSize" value="${database.pool.initialSize}" />
     <property name="maxTotal" value="${database.pool.maxTotal}" />
     <property name="maxIdle" value="${database.pool.maxIdle}" />
     <property name="minIdle" value="${database.pool.minIdle}" />
     <property name="maxWaitMillis" value="${database.pool.maxWaitMillis}" />
</bean>

properties

database.user=dev
database.pwd=dev
database.connection.url=jdbc:oracle:[email protected]:1521:DATABASE

The exception :

Caused by: org.hibernate.exception.GenericJDBCException: Unable to acquire JDBC Connection
    at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:47)
Caused by: java.sql.SQLException: Cannot create JDBC driver of class 'oracle.jdbc.OracleDriver' for connect URL 'jdbc:oracle:[email protected]:1521:DATABASE'
    at org.apache.commons.dbcp2.BasicDataSource.createConnectionFactory(BasicDataSource.java:2161)
Caused by: java.sql.SQLException: No suitable driver
    at org.apache.commons.dbcp2.BasicDataSource.createConnectionFactory(BasicDataSource.java:2152)

I tried to put the driver jar on lib folder of tomcat but same error

I'm getting the error also on Wildfly 10.1.

1

There are 1 answers

8
Guna On

I see you are referring to wrong Package inside Oracle 7 jar. Use OracleDriver class name as follows oracle.jdbc.driver.OracleDriver

<property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" />

You can always open the jar and locate the class for OracleDriver: enter image description here

Please refer to this image to see the OracleDriver class path