2

使用 Objectify 4,我试图在事务中引发受控异常。由于 vrun() 接口不允许抛出异常,我必须抓住它。我这样做了,然后我想执行回滚,但是当事务完成并且一切都失败时(我认为这是因为它试图进行提交),甚至不执行回滚。我该怎么做?

提前致谢!

代码示例:

    ofy().transact(new VoidWork() {

      @Override
      public void vrun() {
        //do something
        //...
        //find someting wrong and want to throw an exception
        try {
          throw new MyException(); //throw the exception
        } catch (MyException e) {
          ofy().getTransaction().rollback(); //catch it and perform rollback
        }
      }
    });
    //an error occurs
4

0 回答 0