You can find org.apache.tomcat.dbcp.dbcp.BasicDataSource in 
common/lib/naming-factory-dbcp.jar.
If you put commons-dbcp.jar, commons-pool.jar and commons-collections.jar in 
common/lib you (maybe) should be able to use 
org.apache.commons.dbcp.BasicDataSource. 
I do it in a similar way - I have my own ressource factory, which extends 
org.apache.commons.dbcp.BasicDataSourceFactory and it works in tomcat 5.5 with 
the above jars.

Gernot

-----Ursprüngliche Nachricht-----
Von: Dhiren Bhatia [mailto:[EMAIL PROTECTED]
Gesendet: Montag, 09. Mai 2005 18:47
An: Tomcat Users List
Betreff: Re: DBCP ClassCastException


I'm using BasicDataSource because javax.sql.DataSource does not have methods 
to set the driver class name, url, username/pwd etc. My app needs to support 
different databases and the driver is loaded based on which database is 
installed.
 If I use org.apache.tomcat.dbcp.dbcp.BasicDataSource, then my code is not
portable to JBoss/Weblogic etc right? BTW, which jar is 
org.apache.tomcat.dbcp.dbcp.BasicDataSource in?
 Thanks for your response.
 Dhiren


 On 5/9/05, Pfingstl Gernot <[EMAIL PROTECTED]> wrote: 
> 
> Tomcat 5.5 doesn't use commons-dbcp directly, the tomcat team took the
> source and put it in other packages.
> So you should use org.apache.tomcat.dbcp.dbcp.BasicDataSource instead of
> org.apache.commons.dbcp.BasicDataSource in your source - btw why do you
> cast to BasicDataSource, you can use javax.sql.DataSource?
> 
> Gernot
> 
> -----Ursprüngliche Nachricht-----
> Von: Dhiren Bhatia [mailto:[EMAIL PROTECTED]
> Gesendet: Montag, 09. Mai 2005 17:19
> An: Tomcat Users List
> Betreff: Re: DBCP ClassCastException
> 
> 
> Hi Lutz,
> I changed the Resource tag definition to:
> <Resource name="jdbc/myserver" auth="Container" type="javax.sql.DataSource
> "
> maxActive="100" maxIdle="30" maxWait="10000"
> driverClassName="com.mysql.jdbc.Driver"/>
> I'm setting the username/password and jdbcurl using code.
> I still get the same ClassCastException. Is Tomcat instantiating the
> correct DataSourceFactory?
> I have the commons-dbcp-1.2.1.jar in my ${TOMCAT_HOME}/common/lib
> Thanks,
> Dhiren
> 
> On 5/8/05, Lutz Zetzsche <[EMAIL PROTECTED]> wrote:
> >
> > Hi Dhiren,
> >
> > Am Montag, 9. Mai 2005 07:36 schrieb Dhiren Bhatia:
> > > Hi all,
> > >
> > > I'm getting a the following ClassCastException running Tomcat 5.5.9
> > > with MySQL
> > >
> > > java.lang.ClassCastException:
> > > org.apache.tomcat.dbcp.dbcp.BasicDataSource
> > >
> > > Here's the relevant code:
> > > *Java code:*
> > > org.apache.commons.dbcp.BasicDataSource datasource;
> > >
> > > datasource =
> > > (BasicDataSource)ctx.lookup("java:comp/env/jdbc/myserver");
> > >
> > > *web.xml*
> > > <resource-ref>
> > > <description>DB Connection</description>
> > > <res-ref-name>jdbc/myserver</res-ref-name>
> > > <res-type>javax.sql.DataSource</res-type>
> > > <res-auth>Container</res-auth>
> > > </resource-ref>
> > > *server.xml*
> > > *....*
> > > <ResourceParams name="jdbc/myserver">
> > > <parameter>
> > > <name>factory</name>
> > > <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
> > > </parameter>
> > > *...*
> > >
> > >
> > > This same code works in Tomcat 5.0.30.
> > >
> > > Has anything changed? Am I missing something?
> >
> > Yes. The syntax for the Resource tag in the server.xml has changed. The
> > resource parameters are no longer defined in tags nested into the
> > Resource tag, but in attributes of the tag. This is an example from the
> > Tomcat 5.5 documentation:
> >
> > <Resource name="jdbc/TestDB" auth="Container"
> > type="javax.sql.DataSource" maxActive="100" maxIdle="30"
> > maxWait="10000" username="javauser" password="javadude"
> > driverClassName="com.mysql.jdbc.Driver"
> > url="jdbc:mysql://localhost:3306/javatest?autoReconnect=true"/>
> >
> >
> > 
> http://jakarta.apache.org/tomcat/tomcat-5.5-doc/jndi-datasource-examples-howto.html
> >
> > Best wishes,
> >
> > Lutz
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
>


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to