0

In my application, I am continously getting this execption.

org.springframework.dao.InvalidDataAccessApiUsageException: OracleLobCreator needs to work on [oracle.jdbc.OracleConnection], not on 

[org.apache.tomcat.dbcp.dbcp.PoolableConnection]: specify a corresponding NativeJdbcExtractor; nested exception is java.lang.ClassCastException: org.apache.tomcat.dbcp.dbcp.PoolableConnection cannot be cast to oracle.jdbc.OracleConnection
    at org.springframework.jdbc.support.lob.OracleLobHandler$OracleLobCreator.createLob(OracleLobHandler.java:547) ~[spring-jdbc-4.1.4.RELEASE.jar:4.1.4.RELEASE]
    at org.springframework.jdbc.support.lob.OracleLobHandler$OracleLobCreator.setClobAsString(OracleLobHandler.java:447) 

Here is my spring bean definition for lobHandler.

<bean id="oracleLobHandler" class="org.springframework.jdbc.support.lob.OracleLobHandler"
      p:nativeJdbcExtractor-ref="nativeJdbcExtractor"/>

<bean id="nativeJdbcExtractor" class="org.springframework.jdbc.support.nativejdbc.C3P0NativeJdbcExtractor"/>


<bean id="jobRepository"
      class="org.springframework.batch.core.repository.support.JobRepositoryFactoryBean"
      p:lobHandler-ref="oracleLobHandler" p:dataSource-ref="dataSource"
      p:databaseType="oracle" p:tablePrefix="BATCH_"
      p:transactionManager-ref="transactionManager"
      p:isolationLevelForCreate="ISOLATION_READ_COMMITTED"/>

I having, ojdbc6-12.1.0.1 jar in tomcat lib folder as well in my classpath. I tried few google solutions, but nothing seems working.

Any suggesstions

1 Answer 1

1

You're using c3po native JDBC extractor where you should probably be using DBCP native jdbc extractor.

Sign up to request clarification or add additional context in comments.

2 Comments

That works, but I am not sure, how the above code is working for my other team members.
Maybe you've setup a Tomcat-managed datasource using DBCP whereas the others use c3po?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.