sendRequest: function(method, url, body)
{
  var http = JwacsLib.getHttpObj();
  var k = function_continuation;

  http.onreadystatechange = function()
  {
    try
    {
      // Report results to the continuation on completion
      if(http.readyState == 4)
      {
        // Resume the continuation with the raw results
        http.onreadystatechange = JwacsLib.emptyFunction;
        resume k <- http;
      }
    }
    catch(e)
    {
      // Errors are thrown as exceptions into the continuation
      http.onreadystatechange = JwacsLib.emptyFunction;
      throw e -> k;
    }
  };

  http.open(method, url);
  http.send(body);
  suspend;
},