code: @Override
      protected String getRequestData() throws ActivityException {
          String httpMethod = getHttpMethod();
          if (httpMethod.equals("GET") || httpMethod.equals("DELETE"))
              return "";
  
          String request = super.getRequestData();
          if (request == null)
              throw new ActivityException("Request data attribute is missing for HTTP method: " + httpMethod);
  
          return request;
      }
docs: The method overrides the one from the super class and does the following:
  <ul>
  <li>For HTTP GET and DELETE requests, it returns an empty string</li>
  <li>Otherwise it gets the value of the variable with the name specified in the
  attribute REQUEST_VARIABLE. The value is typically an XML document or a string</li>
  <li>It invokes the variable translator to convert the value into a string
  and then returns the string value.</li>
  </ul>
  For HTTP methods other than GET and DELETE this will throw an exception if the
  request data variable is not bound, or the value is not a DocumentReference or String.