問題があります:
スレッドにバインドされた Hibernate セッションはありません。構成により、ここで非トランザクション セッションを作成することはできません。
私のプロジェクトをテストするとき。
私はSpring 2.0.7(これはそのプロジェクトでは必須です)とHibernate 3を使用しています。
SessionFactory の定義
トランザクションマネージャーが定義されています(セッションファクトリーが注入されています)
<tx:annotation-driven transaction-manager="transactionManager"/>
- オンになっているトランザクションの注釈
テストに次の注釈を付けました。
@テスト
@トランザクション
および継承された AbstractAnnotationAwareTransactionalTests
=> このエラーが発生しました: スレッドにバインドされた Hibernate セッションがありません。構成では、非トランザクションのセッションをここで作成することはできません
私がそれを克服できる唯一の方法は、使用することです:TransactionStatus transaction = transactionManager.getTransaction(transactionDefinition);
電話する前にテスト中
sessionFactory.getCurrentSession().save(myObject);
助言がありますか?またはそれ以上:どのように機能しますか?トランザクション セッションを作成できないのはなぜですか? 休止状態セッションがバインドされていないのはなぜですか? 私はそれについて何かを読みましたが、それはまだ私には明らかではありません. 私はそれを機能させるためにあらゆることをしたと思いますが、明らかに十分ではありませんでした。
事前にthx、
ステピック