Estou com problema com conexão que cai toda hora, quando starto o tomcat funciona, depois de algumas horas cai, a 3 semanas procurando uma solução, já tentei varias configurações.
Já vi a documentação do JNDI Datasource tomcat 7, esta igual a configurada abaixo.
Estou usando TomCat 7 + Jsf 2.0 + Mysql + Hibernate 4.
Alguém já passou por isso?
<?xml version="1.0" encoding="UTF-8"?>
<Context reloadable="true">
<Resource name="jdbc/BancoDB"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="10000"
username="xxxxx"
password="yyyyyy"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://184.107.24.88:3306/meubanco?autoReconnect=true"/>
</Context>
Já alterei para mais e para menos:
maxActive="100"
maxIdle="30"
maxWait="10000"
Já tentei colocar:
removeAbandoned="true"
removeAbandonedTimeout="60"
logAbandoned="true"
HTTP Status 500 - org.hibernate.TransactionException: JDBC begin transaction failed:
--------------------------------------------------------------------------------
type Exception report
message org.hibernate.TransactionException: JDBC begin transaction failed:
description The server encountered an internal error that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: org.hibernate.TransactionException: JDBC begin transaction failed:
conexao.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:44)
root cause
org.hibernate.TransactionException: JDBC begin transaction failed:
org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:76)
org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:160)
org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1309)
sun.reflect.GeneratedMethodAccessor63.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:601)
org.hibernate.context.internal.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:352)
$Proxy29.beginTransaction(Unknown Source)
conexao.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:29)
root cause
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet successfully received from the server was 30,949,991 milliseconds ago. The last packet sent successfully to the server was 1 milliseconds ago.
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
java.lang.reflect.Constructor.newInstance(Constructor.java:525)
com.mysql.jdbc.Util.handleNewInstance(Util.java:411)
com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1121)
com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3670)
com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3559)
com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4110)
com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2570)
com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2731)
com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2809)
com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:5333)
org.apache.tomcat.dbcp.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:371)
org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:328)
org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:72)
org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:160)
org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1309)
sun.reflect.GeneratedMethodAccessor63.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:601)
org.hibernate.context.internal.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:352)
$Proxy29.beginTransaction(Unknown Source)
conexao.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:29)
root cause
java.io.EOFException: Can not read response from server. Expected to read 4 bytes, read 0 bytes before connection was unexpectedly lost.
com.mysql.jdbc.MysqlIO.readFully(MysqlIO.java:3119)
com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3570)
com.mysql.jdbc.MysqlIO.reuseAndReadPacket(MysqlIO.java:3559)
com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:4110)
com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2570)
com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2731)
com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2809)
com.mysql.jdbc.ConnectionImpl.setAutoCommit(ConnectionImpl.java:5333)
org.apache.tomcat.dbcp.dbcp.DelegatingConnection.setAutoCommit(DelegatingConnection.java:371)
org.apache.tomcat.dbcp.dbcp.PoolingDataSource$PoolGuardConnectionWrapper.setAutoCommit(PoolingDataSource.java:328)
org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.doBegin(JdbcTransaction.java:72)
org.hibernate.engine.transaction.spi.AbstractTransactionImpl.begin(AbstractTransactionImpl.java:160)
org.hibernate.internal.SessionImpl.beginTransaction(SessionImpl.java:1309)
sun.reflect.GeneratedMethodAccessor63.invoke(Unknown Source)
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
java.lang.reflect.Method.invoke(Method.java:601)
org.hibernate.context.internal.ThreadLocalSessionContext$TransactionProtectionWrapper.invoke(ThreadLocalSessionContext.java:352)
$Proxy29.beginTransaction(Unknown Source)
conexao.ConexaoHibernateFilter.doFilter(ConexaoHibernateFilter.java:29)
note The full stack trace of the root cause is available in the Apache Tomcat/7.0.32 logs.
--------------------------------------------------------------------------------
Apache Tomcat/7.0.32