> > Communications link failure Suggests either a) the mysql server isn't running or b) it isn't listening on port 3306 of your localhost adapter.
--David On 3/22/2010 12:31 AM, Roman Sokolyuk wrote: > Hi, > > I am running Tomcat 6.0 on windows 7. > I am also running MySQL as a service and I am getting the following > exception when trying to connect to the database: > > org.apache.jasper.JasperException: javax.servlet.ServletException: > org.apache.tomcat.dbcp.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.) > > org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:491) > > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:401) > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > *root cause* > > javax.servlet.ServletException: > org.apache.tomcat.dbcp.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.) > > org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:862) > > org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:791) > org.apache.jsp.pages.welcome_jsp._jspService(welcome_jsp.java:109) > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > *root cause* > > org.apache.tomcat.dbcp.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.) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) > com.paranormal.dao.SignDao.getAllSigns(SignDao.java:27) > org.apache.jsp.pages.welcome_jsp._jspService(welcome_jsp.java:69) > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > *root cause* > > com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: > 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. > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > java.lang.reflect.Constructor.newInstance(Constructor.java:513) > com.mysql.jdbc.Util.handleNewInstance(Util.java:409) > > com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1122) > com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2260) > com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:787) > com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:49) > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > java.lang.reflect.Constructor.newInstance(Constructor.java:513) > com.mysql.jdbc.Util.handleNewInstance(Util.java:409) > com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:357) > > com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285) > > org.apache.tomcat.dbcp.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38) > > org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1247) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1221) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) > com.paranormal.dao.SignDao.getAllSigns(SignDao.java:27) > org.apache.jsp.pages.welcome_jsp._jspService(welcome_jsp.java:69) > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > *root cause* > > com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: > 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. > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > java.lang.reflect.Constructor.newInstance(Constructor.java:513) > com.mysql.jdbc.Util.handleNewInstance(Util.java:409) > > com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1122) > com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:344) > com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2181) > com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:787) > com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:49) > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > java.lang.reflect.Constructor.newInstance(Constructor.java:513) > com.mysql.jdbc.Util.handleNewInstance(Util.java:409) > com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:357) > > com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285) > > org.apache.tomcat.dbcp.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38) > > org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1247) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1221) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) > com.paranormal.dao.SignDao.getAllSigns(SignDao.java:27) > org.apache.jsp.pages.welcome_jsp._jspService(welcome_jsp.java:69) > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > *root cause* > > java.net.ConnectException: Connection refused: connect > java.net.PlainSocketImpl.socketConnect(Native Method) > java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333) > java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195) > java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182) > java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366) > java.net.Socket.connect(Socket.java:525) > java.net.Socket.connect(Socket.java:475) > java.net.Socket.<init>(Socket.java:372) > java.net.Socket.<init>(Socket.java:215) > > com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:256) > com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:293) > com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2181) > com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:787) > com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:49) > sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) > > sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) > > sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) > java.lang.reflect.Constructor.newInstance(Constructor.java:513) > com.mysql.jdbc.Util.handleNewInstance(Util.java:409) > com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:357) > > com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:285) > > org.apache.tomcat.dbcp.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38) > > org.apache.tomcat.dbcp.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1247) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1221) > > org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) > com.paranormal.dao.SignDao.getAllSigns(SignDao.java:27) > org.apache.jsp.pages.welcome_jsp._jspService(welcome_jsp.java:69) > org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:377) > org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313) > org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260) > javax.servlet.http.HttpServlet.service(HttpServlet.java:717) > > > > This is my web.xml > > <resource-ref> > <res-ref-name>jdbc/para</res-ref-name> > <res-type>javax.sql.DataSource</res-type> > <res-auth>Container</res-auth> > </resource-ref> > > > This is my java code: > > Context initContext = new InitialContext(); > Context envContext = (Context)initContext.lookup("java:/comp/env"); > DataSource ds = (DataSource)envContext.lookup("jdbc/para"); > Connection conn = ds.getConnection(); > > This is my Context file: > > <?xml version="1.0" encoding="UTF-8"?> > > <Context path="/para" docBase="para" debug="5" reloadable="true" > crossContext="true"> > > <Resource name="jdbc/para" auth="Container" type="javax.sql.DataSource" > maxActive="100" maxIdle="30" maxWait="10000" > username="para" password="para" > driverClassName="com.mysql.jdbc.Driver" > url="jdbc:mysql://127.0.0.1:3306/paranormal"/> > </Context> > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org