Je continue à recevoir un:
HibernateException: Non CurrentSessionContext configuré!
dans mon code. La seule information que d'autres recherches ont renvoyée est que le coupable est:
<property name="current_session_context_class">thread</property>
dans mon hibernate.cfg.xml. Je l'ai dans mon fichier hibernate.cfg.xml, et je l'exécute dans Tomcat 6. Est-ce que quelqu'un connaît d'autres causes possibles?
Je crois que vous devez définir votre classe current_session_context_class sur une classe réelle ... Mon fichier hibernate.cfg.xml est configuré pour cela comme suit:
<property name="hibernate.current_session_context_class">org.hibernate.context.ThreadLocalSessionContext</property>
Le code ci-dessus est utilisé pour une base de données mySql mais je ne pense pas que le type de la base de données pour la propriété ci-dessus soit important
J'espère que cela t'aides
Les deux fonctionnent dans Hibernate 4+:
<property name="hibernate.current_session_context_class">thread</property>
<property name="hibernate.current_session_context_class">org.hibernate.context.internal.ThreadLocalSessionContext</property>
Dans les versions antérieures d'Hibernate, il utilisait org.hibernate.context.ThreadLocalSessionContext (comme indiqué dans les autres réponses).
Dans Hibernate 4.1.5 c'est:
<property> name="hibernate.current_session_context_class">org.hibernate.context.internal.ThreadLocalSessionContext</property>
J'utilise Hibernate 4 sur Tomcat 7 et la propriété ci-dessous (celle mentionnée dans la question) a fonctionné pour moi.
<property name="current_session_context_class">thread</property>
var config = new Configuration().Configure(); // Read config from hibernate.cfg.xml
config.CurrentSessionContext<WebSessionContext>(); // <-- No CurrentSessionContext fixing
return config.BuildSessionFactory();