code: public TransitionInstance createTransitionInstance(Transition transition, Long pProcessInstId)
      throws DataAccessException {
          TransactionWrapper transaction=null;
          try {
              transaction = startTransaction();
              return engineImpl.createTransitionInstance(transition, pProcessInstId);
          } catch (DataAccessException e) {
              if (canRetryTransaction(e)) {
                  transaction = (TransactionWrapper)initTransactionRetry(transaction);
                  return ((ProcessExecutor)getTransactionRetrier()).createTransitionInstance(transition, pProcessInstId);
              }
              else
                  throw e;
          } finally {
              stopTransaction(transaction);
          }
      }
docs: Creates a new instance of the WorkTransationInstance entity
  
  @param transition
  @param pProcessInstId
  @return WorkTransitionInstance object