code: public final int prepare() throws XAException
      {
          if (tc.isEntryEnabled()) Tr.entry(tc, "prepare", _resource);
  
  		// The underlying adapter OnePhaseXAResource will throw an
  		// exception with FFDC specific to the wrappered RM.
          try
          {
              _resource.prepare(_xid);
          }
          finally
          {
              if (tc.isEntryEnabled()) Tr.exit(tc, "prepare");
          }
  
          // If the resource hasn't thrown its own
          // exception throw one here.
          throw new XAException(XAException.XA_RBPROTO);
      }
docs: Prepare a transaction.
  
  <p>This is the first phase of the two-phase commit protocol.
  
  @return
  @exception XAException
  @exception SystemException