Cannot open connection hibernate 3

2 respostas
ativa

Pessoal,

tenho uma aplicaçao que deveria ficar 24hs funcionando todos os dias, sem parar.
O problema é que depois de algum tempo, esta aplicação pára de funcionar.
Minha aplicação utiliza banco de dados mysql para consultar dados.

Estou obtendo a excessao: Cannot open connection.
Imagino que o banco esteja fechando a conexao depois de algum tempo.

Tentando resolver isso, fiz o uso do framework C3P0 mas nada adiantou. A aplicação continua perdendo a conexao com o banco.
Faz muito tempo ja que estou procurando a solução e nao encontro. Tenho que reiniciar a aplicação quase todo dia para que ela continue funcionando.

Pelo amor de Deus, alguem me ajudaa!!!
Nao aguento mais ficar sem encontrar essa solução =(

segue meu hibernate.cfg.xml

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
    	<!-- habilita o c3p0 no hibernate 3 -->
		<property name="connection.provider_class">org.hibernate.connection.C3P0ConnectionProvider</property>   
		<!-- aqui, faço o c3p0 testar as conexoes a cada 10 segundos... -->  
		<property name="hibernate.c3p0.idleConnectionTestPeriod">10</property>
        <!-- configuration pool via c3p0--> 
		<property name="hibernate.c3p0.acquire_increment">15</property> 
		<!-- <property name="c3p0.idle_test_period">60</property> --> <!-- seconds --> 
		<property name="hibernate.c3p0.max_statements">0</property> 
		<property name="hibernate.c3p0.max_size">100</property>
		<property name="hibernate.c3p0.min_size">5</property>
		<property name="hibernate.c3p0.timeout">25200</property>
		<property name="hibernate.c3p0.preferredTestQuery">select 1</property>
		<property name="hibernate.c3p0.testConnectionOnCheckout">true</property>
        
        <property name="hibernate.connection.driver_class">org.gjt.mm.mysql.Driver</property>
        <property name="hibernate.connection.password">ativaftdopw</property>
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/atv</property>
        <property name="hibernate.connection.username">atv</property>
        <property name="hibernate.default_schema">atv</property>
        <property name="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
        <property name="hibernate.hbm2ddl.auto">validate</property>
        <mapping class="br.com.ativasolucoes.vo.Equipamento"/>
        <mapping class="br.com.ativasolucoes.vo.Tanques"/>
        <mapping class="br.com.ativasolucoes.vo.Leitura"/>
        <mapping class="br.com.ativasolucoes.vo.Email"/>
        <mapping class="br.com.ativasolucoes.vo.Historico"/>
        <mapping class="br.com.ativasolucoes.vo.Delivery"/>
        <mapping class="br.com.ativasolucoes.vo.Alarmes"/>
        <mapping class="br.com.ativasolucoes.vo.Conexoes"/>
    </session-factory>
</hibernate-configuration>

Alguém consegue me ajudar?

Grande abraço!

2 Respostas

zoren

Procura sobre o parametro auto_reconnect_for_pools do mysql

aeciovc

no seu hibernate.cfg.xml

tente o que o amigo disse:

jdbc:mysql://localhost:3306/baseDados?autoReconnect=true

isso ocorre pq o mysql perde a conexão caso fique 8 horas sem transações.

abraço!

Criado 30 de novembro de 2010
Ultima resposta 30 de nov. de 2010
Respostas 2
Participantes 3