c3pO-Falha após queda do banco: o pool não está sendo limpo?

Caros amigos, tenho uma aplicação Struts com Hibernate e C3pO para gerenciar o pool de conexões.

Após uma queda do banco o sistema não abre mais. Penso eu que o c3pO não está limpando o pool.

Alguém sabe como contornar este problema? Obrigado.

Vejam meu hibernate.cfg.xml e c3po.properties:

<hibernate-configuration>
<session-factory>
<!-- Informações de conexão com o Oracle -->
<property name=“connection.driver_class”>oracle.jdbc.driver.OracleDriver</property>

	&lt;property name="connection.url"&gt;jdbc:oracle:thin:@XX.XXX.XXX.X:XXX:nome&lt;/property&gt;  

	&lt;property name="connection.username"&gt;usuario&lt;/property&gt;
	&lt;property name="connection.password"&gt;senha&lt;/property&gt;

	&lt;!-- Mostrar os comandos SQL executados? --&gt;
	&lt;property name="show_sql"&gt;true&lt;/property&gt;

	&lt;!-- SQL dialect, especifico para a versão 9 do Oracle --&gt;
	&lt;property name="dialect"&gt;net.sf.hibernate.dialect.Oracle9Dialect&lt;/property&gt;
	&lt;property name="c3p0.min_size"&gt;5&lt;/property&gt;
	&lt;property name="c3p0.max_size"&gt;20&lt;/property&gt;
	&lt;property name="c3p0.timeout"&gt;300&lt;/property&gt;
	&lt;property name="c3p0.max_statements"&gt;50&lt;/property&gt;
	&lt;property name="c3p0.idle_test_period"&gt;150&lt;/property&gt;
     
	&lt;!-- Arquivo de mapeamento do JavaBean --&gt;
	
&lt;/session-factory&gt;

</hibernate-configuration>

Este arquivo sobrescreve as propriedades

default do C3PO.

Encerra o pool de conexões quando fora

de uso por mais de meia hora

c3p0.maxIdleTime=1800

Bom, primeiramente c3p0 nem o hibernate recomenda muito para sistemas em produção.

Procure nas configuraçoes pelos atributos validate e validateQuery.

Caso contrário tente usar o DBCP da Apache para Pool de conexão.

Até!