[Resin-interest] Shutdown Issues
Starting with resin-4.0.16 and persisting with Resin-4.0.18 we can no longer shutdown the Resin process properly. When I attempt to do so I get this: - Resin/4.0.18 can't shutdown watchdog at 127.0.0.1:10080. com.caucho.bam.RemoteConnectionFailedException: BamError[type=cancel,group=remote-connection-failed, text=Cannot connect to http://127.0.0.1:10080/hmtp java.io.IOException: Unexpected response HTTP/1.1 500 Internal Server Error html titleServer Error/title body h1Server Error/h1 pThe server is temporarily unavailable due to an internal error. Please notify the system administrator of this problem./p precode Date: 2011-05-26T09:04:56.897+00:00 /code/pre p /hr / small Resin/4.0.18 Server: 'default' /small /body/html --- The jvm log didn't output anything, but when I dump the watchdog-manager.log I get the clue below. I Googled and found a reference to adding the sec:AdminAuthenticator, which I tried to get working, but I could never get the below error to go away. I am really not thinking I should have to modify our current resin.xml to simply shutdown the Resin process properly, and perhaps the below message is misleading? Currently to shut down resin we are issuing a kill on the non-watchdog Resin process, which isn't a feel good. Here is the watchdog-manager.log: [2011/05/26 03:55:37.854] {http://127.0.0.1:10080-1} HmtpServlet[WebApp[production/webapp/admin.resin/ROOT]] requires an active com.caucho.security.Authenticator because HMTP messaging requires authenticated login for security. In the resin.xml, add an sec:AdminAuthenticator [2011/05/26 03:55:37.857] {http://127.0.0.1:10080-1} javax.enterprise.inject.AmbiguousResolutionException: Too many beans match, because they all have equal precedence. See the @Stereotype and enable tags to choose a precedence. Beans: SingletonBean[Authenticator, {@Default(), @Any()}] SingletonBean[Authenticator, {@Default()}] for InjectManager[web-app:production/webapp/admin.resin/ROOT] at com.caucho.config.inject.InjectManager.ambiguousException(InjectManager.java:2593) at com.caucho.config.inject.InjectManager.resolve(InjectManager.java:1766) at com.caucho.config.inject.InjectManager.getReference(InjectManager.java:2101) at com.caucho.hemp.servlet.ServerAuthManager.init(ServerAuthManager.java:76) at com.caucho.remote.HmtpServlet.init(HmtpServlet.java:132) at javax.servlet.GenericServlet.init(GenericServlet.java:70) at com.caucho.server.dispatch.ServletConfigImpl.createServletImpl(ServletConfigImpl.java:1351) at com.caucho.server.dispatch.ServletConfigImpl.createServlet(ServletConfigImpl.java:1199) at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:98) at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:156) at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:287) at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:792) at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:730) at com.caucho.network.listen.TcpSocketLink.handleRequest(TcpSocketLink.java:689) at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:669) at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:617) at com.caucho.network.listen.AcceptTask.doTask(AcceptTask.java:104) at com.caucho.network.listen.ConnectionReadTask.runThread(ConnectionReadTask.java:98) at com.caucho.network.listen.ConnectionReadTask.run(ConnectionReadTask.java:81) at com.caucho.network.listen.AcceptTask.run(AcceptTask.java:67) at com.caucho.env.thread.ResinThread.runTasks(ResinThread.java:164) at com.caucho.env.thread.ResinThread.run(ResinThread.java:130) ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest
Re: [Resin-interest] Writer and OutputStream mixup in 4.0.10...?
We're still seeing this issue at random under 4.0.18 :-( http://bugs.caucho.com/view.php?id=4290 /Mattias Scott Ferguson wrote (2010-11-17 18:50): Mattias Jiderhamn wrote: Scott Ferguson wrote (2010-11-12 18:01): Mattias Jiderhamn wrote: Since upgrading to Resin 4.0.10 this error has turned up now and then in our log files, however we have sofar been unable to reproduce it ourselves. Could it be a Resin bug...? java.lang.IllegalStateException: getWriter() can't be called after getOutputStream(). at com.caucho.server.http.HttpServletResponseImpl.getWriter(HttpServletResponseImpl.java:166) I assume you're never calling getOutputStream() in any of the tags or included files? If we were, we should be able to reproduce it and it would turn up a lot more often in production. We've only seen it logged six times in three weeks. Thanks for the update. That's quite a bit different, since it sounds like a timing/race error. That exception is required by the spec if you call getOutputStream() followed by getWriter(). Could it be related to flushing somehow? Such as if an exception was thrown after flushing...? Or possibly one of the reused connections not being cleared properly. It'll take a bit of work to track this down. -- Scott /Mattias I'm filing this as http://bugs.caucho.com/view.php?id=4290. -- Scott ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest -- /Mattias ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest
Re: [Resin-interest] Shutdown Issues
I have tried each version, starting with 4.0.18 and going back, and the shutdown problem begins with resin-pro-4.0.14 and up. I noticed this on the change log for version 4.0.14: resin: CLI added deploy, undeploy, list, start-webapp, stop-webapp, restar-webapp commands (#4316, rep by Patrick Brigger) So I am guessing either the functionality changed in that version and I don't know how to upgrade my resin.xml properly. Or there is some issue in that version and up with just doing a simple shutdown from the command line (on a Linux system)? Thanks, Aaron Freeman On 5/26/2011 4:29 AM, Aaron Freeman wrote: Starting with resin-4.0.16 and persisting with Resin-4.0.18 we can no longer shutdown the Resin process properly. When I attempt to do so I get this: - Resin/4.0.18 can't shutdown watchdog at 127.0.0.1:10080. com.caucho.bam.RemoteConnectionFailedException: BamError[type=cancel,group=remote-connection-failed, text=Cannot connect to http://127.0.0.1:10080/hmtp java.io.IOException: Unexpected response HTTP/1.1 500 Internal Server Error html titleServer Error/title body h1Server Error/h1 pThe server is temporarily unavailable due to an internal error. Please notify the system administrator of this problem./p precode Date: 2011-05-26T09:04:56.897+00:00 /code/pre p /hr / small Resin/4.0.18 Server: 'default' /small /body/html --- The jvm log didn't output anything, but when I dump the watchdog-manager.log I get the clue below. I Googled and found a reference to adding the sec:AdminAuthenticator, which I tried to get working, but I could never get the below error to go away. I am really not thinking I should have to modify our current resin.xml to simply shutdown the Resin process properly, and perhaps the below message is misleading? Currently to shut down resin we are issuing a kill on the non-watchdog Resin process, which isn't a feel good. Here is the watchdog-manager.log: [2011/05/26 03:55:37.854] {http://127.0.0.1:10080-1} HmtpServlet[WebApp[production/webapp/admin.resin/ROOT]] requires an active com.caucho.security.Authenticator because HMTP messaging requires authenticated login for security. In the resin.xml, add an sec:AdminAuthenticator [2011/05/26 03:55:37.857] {http://127.0.0.1:10080-1} javax.enterprise.inject.AmbiguousResolutionException: Too many beans match, because they all have equal precedence. See the @Stereotype and enable tags to choose a precedence. Beans: SingletonBean[Authenticator, {@Default(), @Any()}] SingletonBean[Authenticator, {@Default()}] for InjectManager[web-app:production/webapp/admin.resin/ROOT] at com.caucho.config.inject.InjectManager.ambiguousException(InjectManager.java:2593) at com.caucho.config.inject.InjectManager.resolve(InjectManager.java:1766) at com.caucho.config.inject.InjectManager.getReference(InjectManager.java:2101) at com.caucho.hemp.servlet.ServerAuthManager.init(ServerAuthManager.java:76) at com.caucho.remote.HmtpServlet.init(HmtpServlet.java:132) at javax.servlet.GenericServlet.init(GenericServlet.java:70) at com.caucho.server.dispatch.ServletConfigImpl.createServletImpl(ServletConfigImpl.java:1351) at com.caucho.server.dispatch.ServletConfigImpl.createServlet(ServletConfigImpl.java:1199) at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:98) at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:156) at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:287) at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:792) at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:730) at com.caucho.network.listen.TcpSocketLink.handleRequest(TcpSocketLink.java:689) at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:669) at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:617) at com.caucho.network.listen.AcceptTask.doTask(AcceptTask.java:104) at com.caucho.network.listen.ConnectionReadTask.runThread(ConnectionReadTask.java:98) at com.caucho.network.listen.ConnectionReadTask.run(ConnectionReadTask.java:81) at com.caucho.network.listen.AcceptTask.run(AcceptTask.java:67) at com.caucho.env.thread.ResinThread.runTasks(ResinThread.java:164) at com.caucho.env.thread.ResinThread.run(ResinThread.java:130) ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest ___ resin-interest mailing list resin-interest@caucho.com
Re: [Resin-interest] Shutdown Issues
I definitely don't know for sure, but that strikes me as a duplicate jar problem. You might look at what new jars were introduced in 4.0.14 and see if you are duplicating any of them in your WEB-INF/lib directory. (*Chris*) On Thu, May 26, 2011 at 7:49 AM, Aaron Freeman aaron.free...@layerz.comwrote: I have tried each version, starting with 4.0.18 and going back, and the shutdown problem begins with resin-pro-4.0.14 and up. I noticed this on the change log for version 4.0.14: resin: CLI added deploy, undeploy, list, start-webapp, stop-webapp, restar-webapp commands (#4316, rep by Patrick Brigger) So I am guessing either the functionality changed in that version and I don't know how to upgrade my resin.xml properly. Or there is some issue in that version and up with just doing a simple shutdown from the command line (on a Linux system)? Thanks, Aaron Freeman On 5/26/2011 4:29 AM, Aaron Freeman wrote: Starting with resin-4.0.16 and persisting with Resin-4.0.18 we can no longer shutdown the Resin process properly. When I attempt to do so I get this: - Resin/4.0.18 can't shutdown watchdog at 127.0.0.1:10080. com.caucho.bam.RemoteConnectionFailedException: BamError[type=cancel,group=remote-connection-failed, text=Cannot connect to http://127.0.0.1:10080/hmtp java.io.IOException: Unexpected response HTTP/1.1 500 Internal Server Error html titleServer Error/title body h1Server Error/h1 pThe server is temporarily unavailable due to an internal error. Please notify the system administrator of this problem./p precode Date: 2011-05-26T09:04:56.897+00:00 /code/pre p /hr / small Resin/4.0.18 Server: 'default' /small /body/html --- The jvm log didn't output anything, but when I dump the watchdog-manager.log I get the clue below. I Googled and found a reference to adding the sec:AdminAuthenticator, which I tried to get working, but I could never get the below error to go away. I am really not thinking I should have to modify our current resin.xml to simply shutdown the Resin process properly, and perhaps the below message is misleading? Currently to shut down resin we are issuing a kill on the non-watchdog Resin process, which isn't a feel good. Here is the watchdog-manager.log: [2011/05/26 03:55:37.854] {http://127.0.0.1:10080-1} HmtpServlet[WebApp[production/webapp/admin.resin/ROOT]] requires an active com.caucho.security.Authenticator because HMTP messaging requires authenticated login for security. In the resin.xml, add an sec:AdminAuthenticator [2011/05/26 03:55:37.857] {http://127.0.0.1:10080-1} javax.enterprise.inject.AmbiguousResolutionException: Too many beans match, because they all have equal precedence. See the @Stereotype and enable tags to choose a precedence. Beans: SingletonBean[Authenticator, {@Default(), @Any()}] SingletonBean[Authenticator, {@Default()}] for InjectManager[web-app:production/webapp/admin.resin/ROOT] at com.caucho.config.inject.InjectManager.ambiguousException(InjectManager.java:2593) at com.caucho.config.inject.InjectManager.resolve(InjectManager.java:1766) at com.caucho.config.inject.InjectManager.getReference(InjectManager.java:2101) at com.caucho.hemp.servlet.ServerAuthManager.init(ServerAuthManager.java:76) at com.caucho.remote.HmtpServlet.init(HmtpServlet.java:132) at javax.servlet.GenericServlet.init(GenericServlet.java:70) at com.caucho.server.dispatch.ServletConfigImpl.createServletImpl(ServletConfigImpl.java:1351) at com.caucho.server.dispatch.ServletConfigImpl.createServlet(ServletConfigImpl.java:1199) at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:98) at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:156) at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:287) at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:792) at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:730) at com.caucho.network.listen.TcpSocketLink.handleRequest(TcpSocketLink.java:689) at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:669) at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:617) at com.caucho.network.listen.AcceptTask.doTask(AcceptTask.java:104) at com.caucho.network.listen.ConnectionReadTask.runThread(ConnectionReadTask.java:98) at com.caucho.network.listen.ConnectionReadTask.run(ConnectionReadTask.java:81) at com.caucho.network.listen.AcceptTask.run(AcceptTask.java:67) at
Re: [Resin-interest] Shutdown Issues
On 05/26/2011 02:29 AM, Aaron Freeman wrote: Starting with resin-4.0.16 and persisting with Resin-4.0.18 we can no longer shutdown the Resin process properly. When I attempt to do so I get this: Do you have multiple resin:AdminAuthenticator or resin:XmlAuthenticator anywhere in the resin.xml file? It looks like Resin can't choose the correct authenticator to see if the shutdown request is valid or not. -- Scott - Resin/4.0.18 can't shutdown watchdog at 127.0.0.1:10080. com.caucho.bam.RemoteConnectionFailedException: BamError[type=cancel,group=remote-connection-failed, text=Cannot connect to http://127.0.0.1:10080/hmtp java.io.IOException: Unexpected response HTTP/1.1 500 Internal Server Error html titleServer Error/title body h1Server Error/h1 pThe server is temporarily unavailable due to an internal error. Please notify the system administrator of this problem./p precode Date: 2011-05-26T09:04:56.897+00:00 /code/pre p /hr / small Resin/4.0.18 Server: 'default' /small /body/html --- The jvm log didn't output anything, but when I dump the watchdog-manager.log I get the clue below. I Googled and found a reference to adding the sec:AdminAuthenticator, which I tried to get working, but I could never get the below error to go away. I am really not thinking I should have to modify our current resin.xml to simply shutdown the Resin process properly, and perhaps the below message is misleading? Currently to shut down resin we are issuing a kill on the non-watchdog Resin process, which isn't a feel good. Here is the watchdog-manager.log: [2011/05/26 03:55:37.854] {http://127.0.0.1:10080-1} HmtpServlet[WebApp[production/webapp/admin.resin/ROOT]] requires an active com.caucho.security.Authenticator because HMTP messaging requires authenticated login for security. In the resin.xml, add an sec:AdminAuthenticator [2011/05/26 03:55:37.857] {http://127.0.0.1:10080-1} javax.enterprise.inject.AmbiguousResolutionException: Too many beans match, because they all have equal precedence. See the @Stereotype and enable tags to choose a precedence. Beans: SingletonBean[Authenticator, {@Default(), @Any()}] SingletonBean[Authenticator, {@Default()}] for InjectManager[web-app:production/webapp/admin.resin/ROOT] at com.caucho.config.inject.InjectManager.ambiguousException(InjectManager.java:2593) at com.caucho.config.inject.InjectManager.resolve(InjectManager.java:1766) at com.caucho.config.inject.InjectManager.getReference(InjectManager.java:2101) at com.caucho.hemp.servlet.ServerAuthManager.init(ServerAuthManager.java:76) at com.caucho.remote.HmtpServlet.init(HmtpServlet.java:132) at javax.servlet.GenericServlet.init(GenericServlet.java:70) at com.caucho.server.dispatch.ServletConfigImpl.createServletImpl(ServletConfigImpl.java:1351) at com.caucho.server.dispatch.ServletConfigImpl.createServlet(ServletConfigImpl.java:1199) at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:98) at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:156) at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:287) at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:792) at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:730) at com.caucho.network.listen.TcpSocketLink.handleRequest(TcpSocketLink.java:689) at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:669) at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:617) at com.caucho.network.listen.AcceptTask.doTask(AcceptTask.java:104) at com.caucho.network.listen.ConnectionReadTask.runThread(ConnectionReadTask.java:98) at com.caucho.network.listen.ConnectionReadTask.run(ConnectionReadTask.java:81) at com.caucho.network.listen.AcceptTask.run(AcceptTask.java:67) at com.caucho.env.thread.ResinThread.runTasks(ResinThread.java:164) at com.caucho.env.thread.ResinThread.run(ResinThread.java:130) ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest ___ resin-interest mailing list resin-interest@caucho.com http://maillist.caucho.com/mailman/listinfo/resin-interest
Re: [Resin-interest] MySQL issues with 4.0.18
You probably have your mysql server configured to only accept socket connections, and not TCP/IP connections. As a rule, external client programs use TCP/IP by default, as sockets can only be used if the db server is on the same machine as the client program and this is often not the case for production applications. See http://dev.mysql.com/doc/refman/5.0/en/connecting.html for more information. Rachel On Thu, May 26, 2011 at 4:29 PM, Rick Mann rm...@latencyzero.com wrote: I'm trying to set my webapp up on a new server, and running into something I've never seen before. Google has solutions for people that worked, but none of them work for me. The same config on OpenSolaris and OS X work (albeit with different versions of MySQL and Resin). I'm not sure if this is new with 4.0.18 or not. I have MySQL and Resin 4.0.18 running on the same host. I have my Java webapp, and WordPress both installed. Whenever either one tries to access the DB, access is refused. Each webapp uses its own user/password. I've verified that I can access MySQL via the mysql command-line client using both sets of credentials. WordPress reports this error: /lz/usr/wordpress/wp-includes/wp-db.php:509: Warning: A link to the server could not be established. url=jdbc:mysql://localhost:3306/?characterEncoding=ISO8859_1 driver=com.mysql.jdbc.Driver 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. [mysql_error] MySQL: 5.5.12 Connector/J: 5.1.15 Resin: 4.0.18 OS: 4.4.3-4ubuntu5 My Java app reports Connection refused (long stacktrace follows). The MySQL JDBC connector is in webapp-jars. The config for the Java webapp looks like: database jndi-namejdbc/mydb/jndi-name max-connections1024/max-connections max-idle-time30s/max-idle-time driver typecom.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource/type urljdbc:mysql://localhost:3306/mydb/url usermydb/user password#/password /driver /database WordPress config: define('DB_NAME', 'wordpress'); define('DB_USER', 'wordpress'); define('DB_PASSWORD', ''); define('DB_HOST', 'localhost'); define('DB_CHARSET', 'utf8'); define('DB_COLLATE', ''); Webapp error: java.net.ConnectException: Connection refused javax.servlet.ServletException: org.springframework.transaction.CannotCreateTransactionException: Could not open Hibernate Session for transaction; nested exception is org.hibernate.exception.JDBCConnectionException: Cannot open connection at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449) at javax.servlet.http.HttpServlet.service(HttpServlet.java:119) at javax.servlet.http.HttpServlet.service(HttpServlet.java:96) at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:109) at com.latencyzero.satdb.RequestFilter.doFilter(RequestFilter.java:124) at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89) at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89) at com.latencyzero.satdb.SecurityFilter.doFilter(SecurityFilter.java:228) at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89) at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:156) at com.caucho.server.webapp.AccessLogFilterChain.doFilter(AccessLogFilterChain.java:95) at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:287) at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:792) at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:730) at com.caucho.network.listen.TcpSocketLink.handleRequest(TcpSocketLink.java:689) at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:669) at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:617) at com.caucho.network.listen.AcceptTask.doTask(AcceptTask.java:104) at com.caucho.network.listen.ConnectionReadTask.runThread(ConnectionReadTask.java:98) at com.caucho.network.listen.ConnectionReadTask.run(ConnectionReadTask.java:81) at com.caucho.network.listen.AcceptTask.run(AcceptTask.java:67) at
Re: [Resin-interest] MySQL issues with 4.0.18
Thank you, Rachel, that does indeed seem to be the case. Is it not possible to get Connector/J to use a socket underneath, if it's running on the same host? -- Rick On May 26, 2011, at 17:09 , Rachel McConnell wrote: You probably have your mysql server configured to only accept socket connections, and not TCP/IP connections. As a rule, external client programs use TCP/IP by default, as sockets can only be used if the db server is on the same machine as the client program and this is often not the case for production applications. See http://dev.mysql.com/doc/refman/5.0/en/connecting.html for more information. Rachel On Thu, May 26, 2011 at 4:29 PM, Rick Mann rm...@latencyzero.com wrote: I'm trying to set my webapp up on a new server, and running into something I've never seen before. Google has solutions for people that worked, but none of them work for me. The same config on OpenSolaris and OS X work (albeit with different versions of MySQL and Resin). I'm not sure if this is new with 4.0.18 or not. I have MySQL and Resin 4.0.18 running on the same host. I have my Java webapp, and WordPress both installed. Whenever either one tries to access the DB, access is refused. Each webapp uses its own user/password. I've verified that I can access MySQL via the mysql command-line client using both sets of credentials. WordPress reports this error: /lz/usr/wordpress/wp-includes/wp-db.php:509: Warning: A link to the server could not be established. url=jdbc:mysql://localhost:3306/?characterEncoding=ISO8859_1 driver=com.mysql.jdbc.Driver 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. [mysql_error] MySQL: 5.5.12 Connector/J: 5.1.15 Resin: 4.0.18 OS: 4.4.3-4ubuntu5 My Java app reports Connection refused (long stacktrace follows). The MySQL JDBC connector is in webapp-jars. The config for the Java webapp looks like: database jndi-namejdbc/mydb/jndi-name max-connections1024/max-connections max-idle-time30s/max-idle-time driver typecom.mysql.jdbc.jdbc2.optional.MysqlConnectionPoolDataSource/type urljdbc:mysql://localhost:3306/mydb/url usermydb/user password#/password /driver /database WordPress config: define('DB_NAME', 'wordpress'); define('DB_USER', 'wordpress'); define('DB_PASSWORD', ''); define('DB_HOST', 'localhost'); define('DB_CHARSET', 'utf8'); define('DB_COLLATE', ''); Webapp error: java.net.ConnectException: Connection refused javax.servlet.ServletException: org.springframework.transaction.CannotCreateTransactionException: Could not open Hibernate Session for transaction; nested exception is org.hibernate.exception.JDBCConnectionException: Cannot open connection at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:286) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913) at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:449) at javax.servlet.http.HttpServlet.service(HttpServlet.java:119) at javax.servlet.http.HttpServlet.service(HttpServlet.java:96) at com.caucho.server.dispatch.ServletFilterChain.doFilter(ServletFilterChain.java:109) at com.latencyzero.satdb.RequestFilter.doFilter(RequestFilter.java:124) at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89) at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198) at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76) at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89) at com.latencyzero.satdb.SecurityFilter.doFilter(SecurityFilter.java:228) at com.caucho.server.dispatch.FilterFilterChain.doFilter(FilterFilterChain.java:89) at com.caucho.server.webapp.WebAppFilterChain.doFilter(WebAppFilterChain.java:156) at com.caucho.server.webapp.AccessLogFilterChain.doFilter(AccessLogFilterChain.java:95) at com.caucho.server.dispatch.ServletInvocation.service(ServletInvocation.java:287) at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:792) at com.caucho.network.listen.TcpSocketLink.dispatchRequest(TcpSocketLink.java:730) at com.caucho.network.listen.TcpSocketLink.handleRequest(TcpSocketLink.java:689) at com.caucho.network.listen.TcpSocketLink.handleRequestsImpl(TcpSocketLink.java:669) at com.caucho.network.listen.TcpSocketLink.handleRequests(TcpSocketLink.java:617) at com.caucho.network.listen.AcceptTask.doTask(AcceptTask.java:104) at