Hi Dave Sorry for my long absence - I was away from my computer for while.
I think Doug's last message just about says it all in respect of connection pools. Follow his advice to use the Tomcat How-Tos exactly as they are, and you should be okay. I looked through your code - the stuff you originally posted following my suggestion to do so - and I did spot one crucial mistake. This line in your test JSP: DataSource ds = ( DataSource ) ctx.lookup("java:comp/env/jdbc/MyDS" ); Should read: DataSource ds = ( DataSource ) ctx.lookup("java:comp/env/jdbc/mysql" ); Spot the difference? :-) The "jdbc/mysql" context refers to the name given to the resource in the context.xml: Resource name="jdbc/mysql" type="com.mysql.jdbc.jdbc2..." auth="Container"/> I would also urge you to go back to using the Commons DBCP resources, and specifying the "jdbc/mysql" resource as in the Tomcat How-To - namely, this definition: <Resource name="jdbc/mysql" type="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource" auth="Container"/> Should read: <Resource name="jdbc/mysql" auth="Container" type="javax.sql.DataSource"/> And this ResourceParams element: <parameter> <name>factory</name> <value> com.mysql.jdbc.jdbc2.optional.MysqlDataSourceFactory </value> </parameter> Should read: <parameter> <name>factory</name> <value> org.apache.commons.dbcp.BasicDataSourceFactory </value> </parameter> Stick to the Tomcat How-Tos, using the Commons DBCP package, at least until you get the thing working, and then you can switch if you want. Finally, just a suggestion, but I would specify the minimum possible for the 'url' attribute: <parameter> <name>url</name> <value> jdbc:mysql://localhost:3306/DATABASE </value> </parameter> Keep it simple, to start with :-) because it could just be one of those non-essential parameters is causing the thing to break. Good luck! Harry >> Despite my posting - and I really hope someone chips in concerning the >> question I raised about the <resource-ref> being redundant in the deployment >> descriptor (!) - the first thing to say is, have faith! >> >> Connection pooling works, and it is actually quite simple, so do not give up >> on it. > > Cheers for the advice Harry... here's where I'm at.... > > I have no choice on the giving up side of things, need to implement it > for some client code I'm working on > > ;-) > > I've been doing a lot of googling to try and get answers so I may have > got crossed wires, I had a version working (or thinking it was working) > with the info in $JAKARTA_HOME/conf/server.xml but I wasn't happy with > this solution (preferring to have the connection defined in > $JAKARTA_HOME/conf/Catalina/localhost/<app_name>.xml for good reasons... > > so I'm basically restarting and I now have the following config > > $JAKARTA_HOME/conf/Catalina/localhost/<app_name>.xml > > <?xml version='1.0' encoding='utf-8'?> > <Context docBase="dev-sstl" path="/dev-sstl" reloadable="true" > useNaming="false"> > > <Resource > name="jdbc/mysql" > type="com.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource" > auth="Container"/> > <ResourceParams name="jdbc/mysql"> > <parameter> > <name>factory</name> > <value>com.mysql.jdbc.jdbc2.optional.MysqlDataSourceFactory</value> > </parameter> > <parameter> > <name>port</name> > <value>3306</value> > </parameter> > <parameter> > <name>user</name> > <value>USERNAME</value> > </parameter> > <parameter> > <name>password</name> > <value>PASSWORD</value> > </parameter> > <parameter> > <name>serverName</name> > <value>localhost</value> > </parameter> > <parameter> > <name>databaseName</name> > <value>DATABASE</value> > </parameter> > <parameter> > <name>explicitUrl</name> > <value>true</value> > </parameter> > <parameter> > <name>url</name> > <value>jdbc:mysql://localhost:3306/DATABASE?autoReconnect=true&useUnicode= > true&characterEncoding=UTF8&max-connections=50&min-connections=2&a > mp;inactivity-timeout=30&wait-timeout=30</value> > </parameter> > </ResourceParams> > </Context> > > The info for the above i gleaned from > http://www.russellbeattie.com/notebook/1006529.html > > Then in <web_app>/WEB-INF/web.xml I have > <?xml version="1.0" encoding="ISO-8859-1"?> > <web-app xmlns="http://java.sun.com/xml/ns/j2ee" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee > http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> > > <resource-ref> > <description>DB connection</description> > <res-ref-name>jdbc/mysql</res-ref-name> > <res-type>javax.sql.DataSource</res-type> > <res-auth>Container</res-auth> > </resource-ref> > </web-app> > > Then in my test JSP I have > try { > Context ctx = new InitialContext(); > DataSource ds = ( DataSource ) ctx.lookup("java:comp/env/jdbc/MyDS" ); > Connection conn = ds.getConnection(); > ... > > And the error I get is > > javax.servlet.ServletException: Name java:comp is not bound in this > Context > > Which is an error I've managed to hit several times, I know the whole > connection pooling is the right way to go about this, just surprised at > how long it is taking me to get going (I dread to think what it will be > like installing this live with the client, but I'll save that happy > thought for later) > > As ever any help much appreciated... (and if the person who helps me to > get this working is ever in London I'll stand them a beer or 3) > > ;-) > > TIA > Dave --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]