--- Robert Bateman <[EMAIL PROTECTED]> wrote: > we are using a combination of 3.0.8-stable and 3.0.14-production on our > servers. The jar files are placed into the same folder you have placed > yours. > > What connect string are you using? > > Bob
I am basically just trying to setup a connection pool as in the documentaion. I am relatively new to java but have several years of C/C++. I am also a System Engineer during the day, but I am writing a network mangement app for my company and decided to go with tomcat/java. So I am a bit rusty on the nitty-gritty of the app server setup. First, here is my server.xml (sorry long) <?xml version='1.0' encoding='utf-8'?> <Server> <Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/> <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/> <GlobalNamingResources> <Environment name="simpleValue" type="java.lang.Integer" value="30"/> <Resource auth="Container" description="User database that can be updated and saved" name="UserDatabase" type="org.apache.catalina.UserDatabase"/> <Resource name="jdbc/MysqlTest1" auth="Container" type="javax.sql.DataSource"/> <ResourceParams name="UserDatabase"> <parameter> <name>factory</name> <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value> </parameter> <parameter> <name>pathname</name> <value>conf/tomcat-users.xml</value> </parameter> </ResourceParams> <ResourceParams name="jdbc/MysqlTest1"> <parameter> <name>factory</name> <value>org.apache.commons.dbcp.BasicDataSourceFactory</value> </parameter> <parameter> <name>validationQuery</name> <value>SELECT * FROM TEST_USER</value> </parameter> <parameter> <name>maxWait</name> <value>5000</value> </parameter> <parameter> <name>maxActive</name> <value>4</value> </parameter> <parameter> <name>password</name> <value>c4milez</value> </parameter> <parameter> <name>url</name> <value>jdbc:mysql://localhost:3306/tomcat-test1?autoReconnect=true</value> </parameter> <parameter> <name>driverClassName</name> <value>org.gjt.mm.mysql.Driver</value> </parameter> <parameter> <name>maxIdle</name> <value>2</value> </parameter> <parameter> <name>username</name> <value>tomcat5</value> </parameter> </ResourceParams> </GlobalNamingResources> <Service name="Catalina"> <Connector acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="8080" redirectPort="8443" maxSpareThreads="75" maxThreads="150" minSpareThreads="25"> </Connector> <Connector port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443"> </Connector> <Engine defaultHost="localhost" name="Catalina"> <Host appBase="webapps" name="localhost"> <Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/> </Host> <Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/> <Realm className="org.apache.catalina.realm.UserDatabaseRealm"/> </Engine> </Service> </Server> And here is my webapps/testapp1/WEB-INF/web.xml file: <?xml version="1.0" encoding="ISO-8859-1"?> <web-app> <description>Test App 1</description> <resource-ref> <description>DB Connection</description> <res-ref-name>jdbc/MysqlTest1</res-ref-name> <res-type>javax.sql.DataSource</res-type> <res-auth>Container</res-auth> </resource-ref> </web-app> I created the DataSource using the Admin app within Tomcat but then I noticed it did not add a factory line as in the docs, so I added this by hand and restarted tomcat: <parameter> <name>factory</name> <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value> </parameter> Here is a simple class I am using to test with: package chuck; import javax.naming.*; import javax.sql.*; import java.sql.*; public class DBTest1 { String foo = "Not Connected"; int bar = -1; public void init() { try { Context ctx = new InitialContext(); if (ctx == null) throw new Exception("Error: No context."); DataSource ds = (DataSource) ctx.lookup("java:comp/env/jdbc/MysqlTest1"); if (ds != null) { Connection conn = ds.getConnection(); if (conn != null) { foo = "Database connection established: " + conn.toString(); Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery("select * from TEST_USER"); if (rs.next()) { foo = rs.getString(2); bar = rs.getInt(1); } conn.close(); } } } catch (Exception e) { e.printStackTrace(); } } public String getFoo() { return foo; } public int getBar() { return bar; } } Any suggestions? Thx, rhugga --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]