J'ai ORMLite configuré comme dans l'échantillon 7 de ORMLite docs, mais après un moment, je reçois Connexion fermée erreurConnexion fermée avec ORMLite et MySql
java.sql.SQLException: Connection has already been closed
at com.j256.ormlite.jdbc.JdbcConnectionSource.getReadWriteConnection (JdbcConnectionSource.java:177)
at com.j256.ormlite.jdbc.JdbcConnectionSource.getReadOnlyConnection(JdbcConnectionSource.java:168)
at com.j256.ormlite.stmt.StatementExecutor.buildIterator(StatementExecutor.java:228)
at com.j256.ormlite.stmt.StatementExecutor.query(StatementExecutor.java:181)
at com.j256.ormlite.dao.BaseDaoImpl.query(BaseDaoImpl.java:263)
at com.tube.auction.db.DbFacade.createOrUpdateUser(DbFacade.java:265)
J'utilise seulement dao les haricots dans le code.
<bean id="databaseUrl" class="java.lang.String">
<constructor-arg index="0" value="jdbc:mysql://localhost:3306/auction" />
</bean>
<bean id="connectionSource" class="com.j256.ormlite.jdbc.JdbcConnectionSource" init-method="initialize">
<property name="url" ref="databaseUrl" />
<property name="username" value="root" />
<property name="password" value="" />
</bean>
<bean id="userDao" class="com.j256.ormlite.spring.DaoFactory" factory-method="createDao">
<constructor-arg index="0" ref="connectionSource" />
<constructor-arg index="1" value="com.tube.auction.dto.User" />
</bean>
Comment gérer les problèmes liés à la connexion? Je ne vois aucun moyen de forcer le redémarrage de connexion Par exemple Notez que isOpen() pour dao.connection returns true
-- 1. Can i test connection here and restart it? How? Code snippet?
try {
userDao.queryForId(someUserId);
} catch(SQLException ex) {
if(is this connection closed?) {
-- 2. What should I do here to restart connection?
}
}
Max Le chat comment vous avez exactement résolu la question? – dorin