Spring声明式事务,哪个地方出错了?

来源:百度知道 编辑:UC知道 时间:2024/06/26 00:37:00
<!-- 配置Hibernate事务管理器-->
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
</bean>

<!-- 配置抽象的TransactionProxyFactoryBean对象来声明事务-->
<bean id="abstractTxDefinition" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" lazy-init="true">
<property name="transactionManager">
<ref bean="transactionManager"/> <!-- 注入事务管理器-->
</property>
<property name="transactionProperties"> <!-- 事务策略-->
<props>
<prop key="delete*">
PROPAGATION_REQUIRED
</prop>
</props>
</property>

你都没有声明为抽象事物,怎么能够继承呢?
需要 <bean id="abstractTxDefinition" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" lazy-init="true" abstract="true">
<property name="transactionManager">
就OK了!

继承的类错误。
Bean property 'transactionProperties' is not writable or has an invalid setter method
属性transactionProperties不可写或者没有set方法。
你的注入呢?

<property name="transactionProperties"> <!-- 事务策略-->
<props>
<prop key="delete*">
PROPAGATION_REQUIRED
</prop>
</props>
</property>

应该是这个地方的原因