code: @SuppressWarnings("unchecked")
      protected <O> O executeTx(final TxCallable<O> c, final TxCallable<O> errorHandler) throws Exception {
          Transaction transaction = beginTransaction();
          configureTransDefault(transaction);
          return processTransactionError(transaction, t -> {
              Object o = null;
              try {
                  o = c.call(t);
                  t.commit();
              } catch (Throwable e) {
                  t.rollback(e);
                  throw e;
              } finally {
                  t.end();
              }
              return (O) o;
          }, errorHandler);
      }
docs: <p>executeTx.</p>
  
  @param c            a {@link ameba.db.ebean.support.ModelResourceStructure.TxCallable} object.
  @param errorHandler a {@link ameba.db.ebean.support.ModelResourceStructure.TxCallable} object.
  @param <O>          a O object.
  @return a O object.
  @throws java.lang.Exception if any.