0

JPAを介して1つのデータベースを更新し、Webサービスを介してさらに1つのデータベースを更新するコードがあります。しかし、webservcie から何らかの例外が発生した場合、JPA トランザクションはロールバックされません。JPA + WebサービスをXAトランザクションとして機能させる方法を教えてください

<bean id="transactionManager" class="org.springframework.transaction.jta.WebSphereUowTransactionManager">

</bean>
 <jee:jndi-lookup id="entityManagerFactory" jndi-name="persistence/persistenceUnit"/>

<tx:annotation-driven/>

そして、私のJavaクラスは以下のようになります

@Transactional
public void method1()
{

// persist database1 through JPA

// persist database2 through Webservice
} 
4

1 に答える 1

1

Web サービス呼び出しがスローする例外の種類は何ですか?

デフォルトの動作は RuntimeExceptions のロールバックであるため、ws がチェック済みの例外をスローしている場合、ロールバックはありませんが、次の方法で変更できます。

@Transactional(rollbackFor = Exception.class)
于 2012-09-27T20:22:27.293 に答える