throw new XAException(XAException.XA_RBROLLBACK);
log.info("Cause is" + e.getCause()); if (e.getCause() != null) { log.error("Cause", e.getCause()); } throw new MessagingXAException(XAException.XA_RBROLLBACK, 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);         throw new XAException(XAException.XA_RBROLLBACK);      }      catch (Throwable t)      {         //Catch anything else         log.error("A Throwable was caught in sending the transaction", t);         throw new XAException(XAException.XAER_RMERR);      }   }