Your right. My ResourceParam syntax is different. I didn't look closely at that. My values are mostly the same.
-----Original Message----- From: Len Popp [mailto:[EMAIL PROTECTED] Sent: Friday, April 13, 2007 9:25 AM To: Tomcat Users List Subject: Re: DB2 DataSource. It should *not* look the same, because the syntax of the <Resource> element changed after 5.0. Look for <ResourceParam> in the 5.0 documentation. -- Len On 4/13/07, Fargusson.Alan <[EMAIL PROTECTED]> wrote: > Thanks. I am using 5.0.28, but what I have looks like what you have. I will > take a closer look to make sure I didn't miss something. > > -----Original Message----- > From: Rashmi Rubdi [mailto:[EMAIL PROTECTED] > Sent: Thursday, April 12, 2007 5:59 PM > To: Tomcat Users List > Subject: Re: DB2 DataSource. > > > Your Tomcat version is not known, so I'm assuming the latest version 6.0.10. > > Here's what should go in: > ------------------------------------------------------ > ...../MyProject/WEB-INF/web.xml > ------------------------------------------------------ > <?xml version="1.0"?> > <web-app xmlns="http://java.sun.com/xml/ns/javaee" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://java.sun.com/xml/ns/javaee > web-app_2_5.xsd" > version="2.5"> > <description>MySQL Test App</description> > <resource-ref> > <description>DB Connection</description> > <res-ref-name>jdbc/TestDB</res-ref-name> > <res-type>javax.sql.DataSource</res-type> > <res-auth>Container</res-auth> > </resource-ref> > </web-app> > > ----------------------------------------------------------------------------------------- > According to the HOW-TO document I gave earlier the JAR for the JDBC > driver must be placed in Tomcat's lib folder, so > .......\apache-tomcat-6.0.10_bak_20070410\lib\ > ----------------------------------------------------------------------------------------- > mysql-connector-java-5.0.5-bin.jar > > ----------------------------------------------------------------------------------------- > Add the connection pooling configuration to your application's Context > definition > ----------------------------------------------------------------------------------------- > <Context path="" docBase="C:/dev/projects/ConnectionPooling" > reloadable="true" debug="true"> > <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"/> > </Context> > > > ----------------------------------------------------------------------------------------- > And finally, here's the sample working code: > /WEB-INF/classes/com/connectionpooltest/ConnectionPoolTest.java > ---------------------------------------------------------------------------------------- > package com.connectionpooltest; > > import java.sql.*; > import javax.naming.*; > import javax.sql.DataSource; > > public class ConnectionPoolTest { > > public void testConnection() throws SQLException, NamingException{ > Connection conn = null; > Statement stmt = null; > ResultSet rs = null; > > try{ > //conn = ... get connection from connection pool ... > Context initContext = new InitialContext(); > Context envContext = > (Context)initContext.lookup("java:/comp/env"); > DataSource ds = (DataSource)envContext.lookup("jdbc/TestDB"); > conn = ds.getConnection(); > > //stmt = conn.createStatement("select ..."); > stmt = conn.createStatement(); > > //rs = stmt.executeQuery(); > rs = stmt.executeQuery("SELECT 'Java Connection Pooling Test' as > a FROM dual"); > > //... iterate through the result set ... > while (rs.next()) { > String s = rs.getString("a"); > System.out.println(" s is : " + s); > } > > rs.close(); > rs = null; > stmt.close(); > stmt = null; > conn.close(); // Return to connection pool > conn = null; // Make sure we don't close it twice > > }catch(SQLException e){ > e.printStackTrace(); > }finally{ > // Always make sure result sets and statements are closed, > // and the connection is returned to the pool > if (rs != null) { > try { rs.close(); } catch (SQLException e) { > e.printStackTrace(); } > rs = null; > } > if (stmt != null) { > try { stmt.close(); } catch (SQLException e) { > e.printStackTrace(); } > stmt = null; > } > if (conn != null) { > try { conn.close(); } catch (SQLException e) { > e.printStackTrace(); } > conn = null; > } > } > } > > } > > Since Connection Pooling is handled by the Container, the above code > must be called from within the context of the Container --- so it must > be called from either a Servlet or a JSP page --- it cannot be called > from the command line alone using a main method. > > -Rashmi > > --------------------------------------------------------------------- > To start a new topic, e-mail: [EMAIL PROTECTED] > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > --------------------------------------------------------------------- > To start a new topic, e-mail: [EMAIL PROTECTED] > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To start a new topic, e-mail: [EMAIL PROTECTED] To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To start a new topic, e-mail: [EMAIL PROTECTED] To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]