log.error("An error occurred in sending transaction and the transaction was rolled back", e); if (e.getCause() != null) { log.error("Cause", e.getCause()); } throw new MessagingXAException(XAException.XA_RBROLLBACK, e);
throw new MessagingXAException(XAException.XA_RBROLLBACK, "An error occurred in sending transaction and the transaction was rolled back", e);
   private void sendTransactionXA(TransactionRequest request, ConnectionDelegate connection)      throws XAException   {      try      {         connection.sendTransaction(request);      }      catch (TransactionRolledBackException e)      {         log.error("An error occurred in sending transaction and the transaction was rolled back", e);         if (e.getCause() != null)         {            log.error("Cause", e.getCause());         }         throw new MessagingXAException(XAException.XA_RBROLLBACK, e);      }      catch (Throwable t)      {         //Catch anything else         log.error("A Throwable was caught in sending the transaction", t);         throw new MessagingXAException(XAException.XAER_RMERR, t);      }   }