entitymanager.merge似乎没有提交

时间:2010-09-14 04:30:41

标签: hibernate spring jpa transactions merge

我有一个使用Tomcat / Spring 3 / JPA / Hibernate的应用程序,但我的合并不承诺 datbase。这是配置:

弹簧conf.xml中:

 <bean id="dataSource"
  class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  <property name="driverClassName" value="com.mysql.jdbc.Driver" />
  <property name="url" value="jdbc:mysql://localhost/.." />
  <property name="username" value=".." />
  <property name="password" value=".." />
 </bean>

 <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
   <property name="entityManagerFactory" ref="entityManagerFactory"/>
 </bean>

 <tx:annotation-driven transaction-manager="transactionManager"/>

<context:annotation-config/>


 <bean id="entityManagerFactory"
  class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean">
  <property name="dataSource" ref="dataSource" />
 </bean>

的persistence.xml:

<persistence-unit name=".." transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
    ...
<property name="dialect" value="org.hibernate.dialect.MySQLDialect" />

这是一个简单的类:

@Transactional
public class UserAdServiceImpl{
...    
merge(...);

任何想法?

1 个答案:

答案 0 :(得分:2)

我的坏!我试图合并一个实体,这是一个只读查询的结果,所以我无法改变它!