Hibernate session.close () ne renvoie pas la connexion au pool

Ma demande a longtemps transactions en cours d'exécution, et donc j'ai essayé l'option de session.close() à la fin de chaque méthode pour s'assurer que les objets de connexion ne sont pas tenus indéfiniment pour longtemps.

Lors de la session.close() de l'option, j'ai pu voir que l'Hibernation de la session de l'objet et de la Connexion correspondante de l'objet obtenu à partir de la session.connexion() sont détruits correctement. Mais le problème est avec le pool de connexion. La connexion obtenue par la session n'est pas remis pour le pool de connexion, même après la fermeture de la session. D'autres demandes sont trouvés en attente d'une connexion à partir de la piscine.

Je suis en utilisant la transaction JTA dans mon application. Dans hibernate.cfg.xml j'ai réglé la connexion.release_mode de auto (par défaut) et de connexion.validation automatique de vrai.

Quelqu'un a été confronté à ce problème? S'il vous plaît laissez-moi savoir ce qui me manque ici.

Suivi: C'est mon fichier de configuration hibernate détails:

<property name="connection.datasource">MXoraDS</property> 
<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property> 
<property name="connection.release_mode">after_statement</property> 
<property name="hibernate.transaction.manager_lookup_class">org.hibernate.transaction.WeblogicTransactionManagerLookup</property> 
<property name="hibernate.transaction.factory_class">org.hibernate.transaction.JTATransactionFactory</property>
<property name="hibernate.current_session_context_class">org.hibernate.context.JTASessionContext</property> 
<property name="transaction.auto_close_session">true</property> 
<property name="max_fetch_depth">2</property>

Nous utilisons JSF et EJB 2.1 pour l'application de la couche de connexion à Oracle DB. Le after_statement ne semble pas à la libération de la connexion à la piscine. S'il vous plaît laissez-moi savoir si vs avez besoin de plus de détails.

source d'informationauteur Perfuser123