HTTP状态 500 - 内部服务器错误


类型 异常报告

消息 Request processing failed; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

描述 服务器遇到一个意外的情况,阻止它完成请求。

例外情况

org.springframework.web.util.NestedServletException: Request processing failed; nested exception is org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet successfully received from the server was 0 milliseconds ago.  The last packet sent successfully to the server was 0 milliseconds ago.
	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:982)
	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:112)
	org.springframework.boot.web.support.ErrorPageFilter.forwardToErrorPage(ErrorPageFilter.java:187)
	org.springframework.boot.web.support.ErrorPageFilter.handleException(ErrorPageFilter.java:170)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:134)
	org.springframework.boot.web.support.ErrorPageFilter.access$000(ErrorPageFilter.java:61)
	org.springframework.boot.web.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:94)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:112)

根本原因。

org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet successfully received from the server was 0 milliseconds ago.  The last packet sent successfully to the server was 0 milliseconds ago.
	org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:80)
	org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:394)
	org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:538)
	cn.hrbmu.bstc.metsigdb.WebConfig$1.preHandle(WebConfig.java:30)
	org.springframework.web.servlet.HandlerExecutionChain.applyPreHandle(HandlerExecutionChain.java:134)
	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:958)
	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:112)
	org.springframework.boot.web.support.ErrorPageFilter.forwardToErrorPage(ErrorPageFilter.java:187)
	org.springframework.boot.web.support.ErrorPageFilter.handleException(ErrorPageFilter.java:170)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:134)
	org.springframework.boot.web.support.ErrorPageFilter.access$000(ErrorPageFilter.java:61)
	org.springframework.boot.web.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:94)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:112)

根本原因。

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure

The last packet successfully received from the server was 0 milliseconds ago.  The last packet sent successfully to the server was 0 milliseconds ago.
	sun.reflect.GeneratedConstructorAccessor528.newInstance(Unknown Source)
	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	com.mysql.jdbc.Util.handleNewInstance(Util.java:404)
	com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:988)
	com.mysql.jdbc.ExportControlled.transformSocketToSSLSocket(ExportControlled.java:164)
	com.mysql.jdbc.MysqlIO.negotiateSSLConnection(MysqlIO.java:4894)
	com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1661)
	com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1228)
	com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2253)
	com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2284)
	com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2083)
	com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:806)
	com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
	sun.reflect.GeneratedConstructorAccessor525.newInstance(Unknown Source)
	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	com.mysql.jdbc.Util.handleNewInstance(Util.java:404)
	com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:410)
	com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:328)
	org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:310)
	org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:203)
	org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:718)
	org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:650)
	org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:468)
	org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:143)
	org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:118)
	org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:107)
	org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:131)
	org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111)
	org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77)
	org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:394)
	org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:538)
	cn.hrbmu.bstc.metsigdb.WebConfig$1.preHandle(WebConfig.java:30)
	org.springframework.web.servlet.HandlerExecutionChain.applyPreHandle(HandlerExecutionChain.java:134)
	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:958)
	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:112)
	org.springframework.boot.web.support.ErrorPageFilter.forwardToErrorPage(ErrorPageFilter.java:187)
	org.springframework.boot.web.support.ErrorPageFilter.handleException(ErrorPageFilter.java:170)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:134)
	org.springframework.boot.web.support.ErrorPageFilter.access$000(ErrorPageFilter.java:61)
	org.springframework.boot.web.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:94)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:112)

根本原因。

javax.net.ssl.SSLHandshakeException: No appropriate protocol (protocol is disabled or cipher suites are inappropriate)
	sun.security.ssl.HandshakeContext.<init>(HandshakeContext.java:171)
	sun.security.ssl.ClientHandshakeContext.<init>(ClientHandshakeContext.java:103)
	sun.security.ssl.TransportContext.kickstart(TransportContext.java:227)
	sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:433)
	com.mysql.jdbc.ExportControlled.transformSocketToSSLSocket(ExportControlled.java:149)
	com.mysql.jdbc.MysqlIO.negotiateSSLConnection(MysqlIO.java:4894)
	com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1661)
	com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1228)
	com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2253)
	com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2284)
	com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2083)
	com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:806)
	com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47)
	sun.reflect.GeneratedConstructorAccessor525.newInstance(Unknown Source)
	sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	com.mysql.jdbc.Util.handleNewInstance(Util.java:404)
	com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:410)
	com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:328)
	org.apache.tomcat.jdbc.pool.PooledConnection.connectUsingDriver(PooledConnection.java:310)
	org.apache.tomcat.jdbc.pool.PooledConnection.connect(PooledConnection.java:203)
	org.apache.tomcat.jdbc.pool.ConnectionPool.createConnection(ConnectionPool.java:718)
	org.apache.tomcat.jdbc.pool.ConnectionPool.borrowConnection(ConnectionPool.java:650)
	org.apache.tomcat.jdbc.pool.ConnectionPool.init(ConnectionPool.java:468)
	org.apache.tomcat.jdbc.pool.ConnectionPool.<init>(ConnectionPool.java:143)
	org.apache.tomcat.jdbc.pool.DataSourceProxy.pCreatePool(DataSourceProxy.java:118)
	org.apache.tomcat.jdbc.pool.DataSourceProxy.createPool(DataSourceProxy.java:107)
	org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:131)
	org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111)
	org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77)
	org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:394)
	org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:538)
	cn.hrbmu.bstc.metsigdb.WebConfig$1.preHandle(WebConfig.java:30)
	org.springframework.web.servlet.HandlerExecutionChain.applyPreHandle(HandlerExecutionChain.java:134)
	org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:958)
	org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:897)
	org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:970)
	org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:861)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:655)
	org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:846)
	javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
	org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:99)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:101)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:112)
	org.springframework.boot.web.support.ErrorPageFilter.forwardToErrorPage(ErrorPageFilter.java:187)
	org.springframework.boot.web.support.ErrorPageFilter.handleException(ErrorPageFilter.java:170)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:134)
	org.springframework.boot.web.support.ErrorPageFilter.access$000(ErrorPageFilter.java:61)
	org.springframework.boot.web.support.ErrorPageFilter$1.doFilterInternal(ErrorPageFilter.java:94)
	org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
	org.springframework.boot.web.support.ErrorPageFilter.doFilter(ErrorPageFilter.java:112)

):注意 主要问题的全部 stack 信息可以在 server logs 里查看


Apache Tomcat/8.5.73