1

アプリケーションに 2 つの異なる API を統合するときに問題に直面しました。問題は、異なるデータ ソース (MSSQL) とトランザクション テンプレートを備えた異なる Spring トランザクション マネージャーを使用していることです。Spring トランザクション マネージャーは、Bean を使用せずにプログラムで作成されます。

メソッドのスニペットは次のとおりです。

public void f(){
     ...
     getManager().deployWorkingCopy(userId, toDeploy); //API1, TransactionManager1, DataSource1

     List<User> users = umApi.loadAllUsers();
     List<Group> groups = umApi.loadAllGroups();

     for(User user : users){
        umSynchronization.synchronizeUser(user); //API2, TransactionManager2, DataSource2
     }

     for(Group group : groups){
        umSynchronization.synchronizeGroup(group); //API2, TransactionManager2, DataSource2         
     }
}

私の質問は、これらのクエリを 1 つのトランザクションで実行することは可能ですか? どのように?

4

0 に答える 0