Peter –
I'm not a complete expert, but it appears to me that the error is saying it 
needs the Oracle JDBC drivers to do LOB work.
What is the version of ojdbc6.jar do you have in your classpath?
You really want the 11.2.0.3 version, particularly with that version of Java.
Jeff

From: Busfy,Peter [mailto:peter.bu...@drei.com]
Sent: Thursday, August 16, 2012 9:24 AM
To: users@tomcat.apache.org
Subject: tomcat and DB oracle problem - only in higher versions

Hello,

I found following problem when java application is trying save xml data into 
xml column to database.
I found a problem with tomcat which is happening in the version 6.0.32 and 
6.0.35 (maybe also in other version), but working really fine with version 
6.0.26.

My configuration:

OS: windows 7 enterprise
IDE: Eclipse EE 3.7.1
Java: 1.6.0_33
Tomcat: 6.0.26, 6.0.32, 6.0.35
DB: Oracle Database 11g Enterprise Edition 11.2.0.3.0
Other technologies: Spring 3.1.1 + Hibernate 3 + Struts 1.1

Here is the exception stack trace:

2012-08-13 14:26:32,434 ERROR 
[at.h3g.portal.selfcare.frontend.struts.actions.BaseAction] - <Exception 
catched in BaseAction: 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>
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:505)
       at 
org.springframework.jdbc.support.lob.OracleLobHandler$OracleLobCreator.setClobAsString(OracleLobHandler.java:413)
       at 
org.springframework.orm.hibernate3.support.ClobStringType.nullSafeSetInternal(ClobStringType.java:86)
       at 
org.springframework.orm.hibernate3.support.AbstractLobType.nullSafeSet(AbstractLobType.java:180)
       at org.hibernate.type.CustomType.nullSafeSet(CustomType.java:140)
       at 
org.hibernate.persister.entity.AbstractEntityPersister.dehydrate(AbstractEntityPersister.java:2184)
       at 
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2431)
       at 
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:2875)
       at 
org.hibernate.action.EntityInsertAction.execute(EntityInsertAction.java:79)
       at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:273)
       at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:265)
       at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:184)
       at 
org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
       at 
org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
       at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
       at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:383)
       at 
org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:133)
       at 
org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:656)
       at 
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:754)
       at 
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:723)
       at 
org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:393)
       at 
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:120)
       at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
       at 
at.h3g.portal.commons.logging.StatsMethodLogger.invoke(StatsMethodLogger.java:93)
       at 
at.h3g.portal.commons.logging.StatsMethodInterceptor.invoke(StatsMethodInterceptor.java:14)
       at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
       at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
       at $Proxy4.submitXML(Unknown Source)
       at 
at.h3g.portal.helper.OrderHelper.createAndStoreServiceOrderXML(OrderHelper.java:85)
       at 
at.h3g.portal.helper.OrderHelper.createAndStoreServiceOrderXML(OrderHelper.java:103)
       at 
at.h3g.portal.layer.BusinessLayer.createAndStoreServiceOrderXML(BusinessLayer.java:366)
       at at.h3g.portal.layer.SettingsHelper.changeFlag(SettingsHelper.java:509)
       at 
at.h3g.portal.selfcare.frontend.struts.actions.multisettings.SaveMultiSettingsAction.exec(SaveMultiSettingsAction.java:202)
       at 
at.h3g.portal.selfcare.frontend.struts.actions.BaseAction.execute(BaseAction.java:463)
       at 
org.springframework.web.struts.DelegatingActionProxy.execute(DelegatingActionProxy.java:113)
       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:637)
       at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
       at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
       at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at 
at.h3g.portal.commons.logging.context.NDContextLoggingFilter.doFilter(NDContextLoggingFilter.java:54)
       at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at 
at.h3g.portal.commons.logging.StatsMethodLogger.invoke(StatsMethodLogger.java:77)
       at 
at.h3g.portal.commons.logging.StatsMethodInterceptor.invoke(StatsMethodInterceptor.java:36)
       at 
at.h3g.portal.commons.logging.AbstractLoggingFilter.doFilter(AbstractLoggingFilter.java:46)
       at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at 
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
       at 
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
       at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at 
at.h3g.portal.commons.filters.AbstractHttpRequestSanitizationFilter.doFilter(AbstractHttpRequestSanitizationFilter.java:40)
       at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at 
at.h3g.portal.commons.filters.AbstractHttpRequestValidationFilter.doFilter(AbstractHttpRequestValidationFilter.java:78)
       at 
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
       at 
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
       at 
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
       at 
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
       at 
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
       at 
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
       at 
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
       at 
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
       at 
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
       at 
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
       at 
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
       at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ClassCastException: 
org.apache.tomcat.dbcp.dbcp.PoolableConnection cannot be cast to 
oracle.jdbc.OracleConnection
       at oracle.sql.CLOB.createTemporary(CLOB.java:754)
       at oracle.sql.CLOB.createTemporary(CLOB.java:716)
       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.springframework.jdbc.support.lob.OracleLobHandler$OracleLobCreator.prepareLob(OracleLobHandler.java:541)
       at 
org.springframework.jdbc.support.lob.OracleLobHandler$OracleLobCreator.createLob(OracleLobHandler.java:488)
       ... 70 more

I don’t know if these information are enough for you. If you need any other 
information don’t hesitate to ask.

Best Regards

Peter Busfy

[cid:image53295b.JPG@4d39428d.45aa78e2]

dreibusinesslink
__________________________________________________________________________

Confidentiality Notice:  This Transmission (including any attachments) may 
contain information that is privileged, confidential, and exempt from 
disclosure under applicable law.  If the reader of this message is not the 
intended recipient you are hereby notified that any dissemination, 
distribution, or copying of this communication is strictly prohibited.  

If you have received this transmission in error, please immediately reply to 
the sender or telephone (512) 343-9100 and delete this transmission from your 
system.

Reply via email to