Savoir quelle base de données est indisponible ?
Bonjour,
J'ai une application reliée à plusieurs bases de données.
mais quand il y en a une qui est indisponible et qu'on veut en savoir plus dans les logs, ça crache juste bêtement :
Code:
1 2 3 4 5 6 7 8 9 10
| Caused by: org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot get a connection, pool error Timeout waiting for idle object
at org.apache.tomcat.dbcp.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:104)
at org.apache.tomcat.dbcp.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
at org.hibernate.connection.DatasourceConnectionProvider.getConnection(DatasourceConnectionProvider.java:69)
at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:417)
... 40 more
Caused by: java.util.NoSuchElementException: Timeout waiting for idle object
at org.apache.tomcat.dbcp.pool.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:958)
at org.apache.tomcat.dbcp.dbcp.PoolingDataSource.getConnection(PoolingDataSource.java:96)
... 43 more |
D'ailleurs je ne sais pas exactement comment marche ces logs mais si on pouvait désigner la bonne base on gagnerait du temps.
Ces bases sont définies dans persistence.xml de cette façon :
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| <persistence-unit name="Base1.hibernate" transaction-type="RESOURCE_LOCAL">
<description>Base1 Persistence Unit</description>
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>com.myApp.domain.MyClass</class>
<exclude-unlisted-classes>true</exclude-unlisted-classes>
<properties>
<property name="hibernate.connection.datasource" value="java:comp/env/jdbc/Base1" />
<property name="hibernate.format_sql" value="true"/>
<property name="hibernate.dialect" value="org.hibernate.dialect.OracleDialect"/>
<property name="hibernate.default_schema" value="schema1"/>
</properties>
</persistence-unit> |
Merci.