def send(self, method, xml):
        "Send SOAP request using HTTP"
        if self.location == 'test': return
        # location = "%s" % self.location #?op=%s" % (self.location, method)
        location = self.location
        
        if self.services:
            soap_action = self.action 
        else:
            soap_action = self.action + method
        
        headers={
            'Content-type': 'text/xml; charset="UTF-8"',
            'Content-length': str(len(xml)),
            "SOAPAction": "\"%s\"" % (soap_action)
        }
        headers.update(self.http_headers)
        log.info("POST %s" % location)
        log.info("Headers: %s" % headers)
        
        if self.trace:
            print "-"*80
            print "POST %s" % location
            print '\n'.join([(k,v) % "%s: %s" for k,v in headers.items()])
            print u"\n%s" % xml.decode("utf8","ignore")
        
        response, content = self.http.request(
            location, "POST", body=xml, headers=headers)
        self.response = response
        self.content = content
        
        if self.trace: 
            print 
            print '\n'.join(["%s: %s" % (k,v) for k,v in response.items()])
            print content#.decode("utf8","ignore")
            print "="*80
        return content
dataset/ETHPy150Open uwdata/termite-visualizations/web2py/gluon/contrib/pysimplesoap/client.py/SoapClient.send/swapped operands of `%`