Hi,
I am using Tomcat 6.0.26 under Eclipse 3.6. I have configured a data source in 
server.xml:

<Resource auth="Container" 
description="Oracle database" 
driverClassName="oracle.jdbc.driver.OracleDriver" 
logAbandoned="true" 
maxActive="30" maxIdle="10" maxWait="10000" 
name="jdbc/ORACLE" password="xxx" 
removeAbandoned="true" 
removeAbandonedTimeout="60"
type="javax.sql.DataSource" 
url="jdbc:oracle:thin:@vm:1521:bmdev" username="xxx" 
connectionProperties="SetBigStringTryClob=true"/>

To save BLOBs with Oracle I have to access the OracleResultSet (unfortunatelly) 
which I extract as delegate from the DelegatingResultSet provided by the 
connection pool implementation:

ResultSet rs = stmt.executeQuery();
org.apache.tomcat.dbcp.dbcp.DelegatingResultSet drs = (DelegatingResultSet) rs;
OracleResultSet oracleResultSet = (OracleResultSet) drs.getDelegate();

Then I switched to use Tomcat 6.0.29. I just changed the server runtime in 
Eclipse. The above cast to OracleResultSet now fails because the 
DelegatingResultSet contains another DelegatingResultSet which again contains 
the OracleResultSet. So I had to change the code like this:

OracleResultSet oracleResultSet = (OracleResultSet) ((DelegatingResultSet) 
drs.getDelegate()).getDelegate();

Why do these two versions of Tomcat differ so much? I thought that the third 
part of the version (26 or 29) is just a patch level. Why do I have to adjust 
the application code if I migrate to another patch level?

Thank you and best regards
Andreas
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to