tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Witczak <witc...@acm.org>
Subject Re: Problem starting connection pooling
Date Fri, 22 Jan 2010 13:44:54 GMT


On 1/22/2010 8:05 AM, David Smith wrote:
> Mark Witczak wrote:
>    
>> I'm very new to Tomcat, connection pooling, JSP, etc. and I've been
>> banging my head against a wall for two weeks trying to get a simple
>> program to connect to a MySQL database.
>>
>> *Vital Stats:*
>> Ubuntu 9.10, Java 1.6.0_0,  Java Servelet 2.5, Java Server Pages 2.1,
>> JSTL 1.2, Apache2, Tomcat 6.0.20, MySQL 5.1.41&  5.0.67
>> MySQL Connector/J 5.1.11 (also 5.1.10) - in $CATALINA_HOME/lib
>> dbcp 1.2.1 - in $CATALINA_HOME/lib
>> (all standard Ubuntu issue)
>>
>> *testapp/WEB-INF/web.xml:*
>> <?xml version="1.0" encoding="ISO-8859-1"?>
>> <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
>> http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
>>     version="2.5">
>>
>> <description>
>>        Servlet and JSP Examples.
>> </description>
>> <display-name>Servlet and JSP Examples</display-name>
>>
>> <resource-ref>
>> <description>DB Connection</description>
>> <res-ref-name>jdbc/mydatabase</res-ref-name>
>> <res-type>javax.sql.DataSource</res-type>
>> <res-auth>Container</res-auth>
>> </resource-ref>
>> </web-app>
>>
>> *testapp/META-INF/context.xml:*
>> <?xml version="1.0" encoding="UTF-8"?>
>>
>> <Context path="/junk" docBase="junk"
>>          debug="5" reloadable="true" crossContext="true">
>>
>> <Resource name="jdbc/mydatabase" auth="Container"
>> type="javax.sql.DataSource"
>>                 maxActive="100" maxIdle="30" maxWait="10000"
>>                 username="foo" password="bar"
>> driverClassName="com.mysql.jdbc.Driver"
>>                 url="jdbc:mysql://test.hostname.com:3306/database_test1"/>
>> </Context>
>>
>> *testapp/testapp.jsp:*
>> <%@ page contentType="text/html" %>
>> <%-- These libraries are required for the<c>  and<sql>  tags --%>
>> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
>> <%@ taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql" %>
>> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
>> <html>
>> <head>
>> <title>JNDI DBCP Test Page</title>
>> </head>
>> <body>
>>
>> <h1>JNDI DBCP Test Page</h1>
>> <br/>Executing the query ...
>> <br/>
>>
>> <%-- Note: Enter a query that is valid for your database here --%>
>> <sql:query var="result" dataSource="jdbc/mydatabase">
>>          SELECT company FROM manuals
>> </sql:query>
>> </body>
>> </html>
>>
>> I create the WAR (jar cvf testapp.war *), undeploy the old version and
>> redeploy the new one through Tomcat Web Application Manager. Then
>> restart Tomcat (sudo /etc/init.d/tomcat restart). The result is:
>>
>> Jan 21, 2010 9:40:35 PM org.apache.catalina.core.ApplicationContext log
>> INFO: ContextListener: contextInitialized()
>> Jan 21, 2010 9:40:35 PM org.apache.catalina.core.ApplicationContext log
>> INFO: SessionListener: contextInitialized()
>> Jan 21, 2010 9:43:06 PM org.apache.catalina.core.StandardWrapperValve
>> invoke
>> SEVERE: Servlet.service() for servlet jsp threw exception
>> javax.servlet.jsp.JspException: Unable to get connection, DataSource
>> invalid: "org.apache.commons.dbcp.SQLNestedException: Cannot create
>> PoolableConnectionFactory (Communications link failure
>>
>> The last packet sent successfully to the server was 0 milliseconds
>> ago. The driver has not received any packets from the server.)"
>>          at
>> org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.getConnection(Unknown
>> Source)
>>          at
>> org.apache.taglibs.standard.tag.common.sql.QueryTagSupport.doStartTag(Unknown
>> Source)
>>          at
>> org.apache.jsp.test_jsp._jspx_meth_sql_005fquery_005f0(test_jsp.java:188)
>>          at org.apache.jsp.test_jsp._jspService(test_jsp.java:138)
>>          at
>> org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
>>          at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
>> Blah, Blah, Blah....
>>
>> *More info: *The connection to MySQL tested successfully using the
>> command line 'mysql'. There are no firewalls, that I can find, between
>> the servers.
>>
>> What is going on here? What am I missing? What is going on here? How
>> do I fix it?
>>
>> -Do I need to create a "foo" user in the tomcat-users.xml?
>> -Do I have to mess with the policy files? or security?
>>
>> Thanks for your help.
>> Mark
>>
>>
>>
>>      
> What options did you use with the mysql command to test MySQL?  Be
> careful as the command line will use unix sockets instead of tcp/ip by
> default.  The JDBC driver won't be able to do that.
>
> --David
>    

I used: mysql -u foo -p -h test.hostname.com

Is there a way to force the command to use TCP/IP? is there a parameter for networking that
I should include in context.xml?

Thanks,
Mark



---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tomcat.apache.org
For additional commands, e-mail: users-help@tomcat.apache.org


Mime
View raw message