A 项目 --用户信息
B 项目--账户信息
------------------------
在A项目
一、本项目A项目 出现异常,怎么 是B项目的数据回滚
saveAll{
//1、dubbo接口 调B项目 的保存账户接口
boolean result=B.addAccount();
//2、保存 a项目的 user信息
this.saveUser(result)// saveUser此处报错, 怎么回滚B项目的 账户信息????
}
二、调项目B的dubbo接口,出现异常。 保证A项目,数据回滚。
saveAll{
//1、dubbo接口 调B项目 的保存账户接口
boolean result=B.addAccount();
//调的dubbo接口的 异常不会传递给 此项目,
// 需要判断接口的返回结果,手动抛出异常,回滚此项目数据
if(!result.isSuccess()){throw new Exception()}
//2、保存 a项目的 user信息
this.saveUser(accountId);
}