<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
       http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
       http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd
       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd"> <bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="configLocation"
value="classpath:hibernate.cfg.xml">
</property>
</bean> <bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
</bean> <bean id="BbsDAO" class="orm.BbsDAO">
<property name="sessionFactory">
<ref bean="sessionFactory" />
</property>
</bean> <bean id="bbs_service" class="Service.Bbs_Service_impl">
<property name="bbsdao">
<ref bean="BbsDAO" />
</property>
</bean> <bean id="base" class="struts.action.BaseAction">
<property name="bbs_service">
<ref bean="bbs_service" />
</property>
</bean> <bean name="/test" class="struts.action.TestAction" parent="base" /> <tx:annotation-driven transaction-manager="transactionManager" /> </beans>
这是配置文件public class TestAction extends BaseAction {
@Transactional(propagation=Propagation.REQUIRED)
public ActionForward execute(ActionMapping mapping, ActionForm form,用的是注解式事务,,怎么解决,帮忙啊

解决方案 »

  1.   

    <bean id="tm"
    class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
    <property name="dataSource">
    <ref bean="myDataSource" />
    </property>
    </bean>
    <bean id="baseTransactionProxy"
    <!--TransactionProxyFactoryBean代理了具体的事务处理
    有三个主要的属性必须被设置
    --> class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
    <property name="transactionManager" ref="tm" />
    <!-- 表示对哪些方法进行拦截,拦截到的方法就自动启动事务,并commit,如果出错就rollback -->
    <property name="transactionAttributes">
    <props>
    <prop key="update*">PROPAGATION_REQUIRED</prop>
    <prop key="insert*">PROPAGATION_REQUIRED</prop>
    <prop key="delete*">PROPAGATION_REQUIRED</prop>
    </props>
    </property>
    <!-- 事务管理目标 --> <property name="target" ref="ta" />
    </bean>