title: Rollback a @Transactional annotated method
body: <p>Good day. The following code:</p>
  
  <pre><code> class A{
       private B b;
      @Transactional
      public SomeResult doSomething(){
          SomeResult res = null;
          try {
            // do something 
          } catch (Exception e) {
              res  = b.saveResult();
          }
          return res ;
      }
  }
  @Transactional(propagation = Propagation.REQUIRES_NEW)
  class B{
    public SomeResult saveResult(){
        // save in db 
    }
  }
  </code></pre>
  
  <p>As I understand, if there is an exception in the method <code>doSomething</code> the transaction isn't rolled back. And how to make that it rolled? and returned SomeResult</p>