2015-10-14 146 views
2

我使用:休眠5春天JTA

  • 的Hibernate 5.0.2
  • 春4.2
  • Atomikos公司3.9.3

官方文件說,你只需要設置jtaTransactionManager,一切正常:

<bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> 
      <property name="dataSource" ref="atomikosDataSource" /> 
      <property name="jtaTransactionManager" ref="jtaTransactionManager"/> 
      [...] 
    </bean> 

不幸的是,會話不會被刷新 - 不會發生寫入操作。什麼是問題?

回答

3

的問題是,休眠5需要我們設置以下屬性,春天沒有做自動尚未:

<bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean"> 
    [...] 
    <property name="hibernateProperties"> 
     <props> 
      [...] 
      <prop key="hibernate.transaction.coordinator_class">jta</prop> 
     </props> 

這解決了該問題對我來說。

+1

我有一個不同的問題。會話正在刷新,但連接從未釋放。設置此屬性解決了我的連接泄漏問題。 –

+1

協調器類中的jta值是什麼。我們不需要再定義factory_class – swingmicro

+0

只是想在上面評論中給Jason B一個功勞,並且可能會添加一些搜索詞來幫助其他有失去連續性問題的用戶......我們有失去連接的問題。我們執行了一項迅速獲得支持並且沒有釋放聯繫的工作。我們嘗試了幾種配置方式,直到我點擊Jason的評論並解決了我們的問題。 – inor