title: suds WebFault most probable incorrect SOAPAction
body: <p>I've check the other issues posted that are similar to this and none that I have seen are the same issues. I am going to post this question for both suds and pysimplesoap. I don't care which one I get to work but I kinda need to get one of them working soon. I think the problem may be with the WSDL being generated by a service created in .NET because I am having the same problem with pysimplesoap and every other python soap client I have tried. I have tried this with both suds and suds-jurko with the same results. I am not good with this SOAP stuff (I'd much rather be using a simple RESTful service with JSON) so any help would be very much appreciated. I do upvote and mark the accepted solution to my questions.</p>
  
  <p><a href="http://www.thataintworking.com/uploads/CSSoapService.wsdl" rel="nofollow">Here is the WSDL file</a></p>
  
  <p>Here is my code:</p>
  
  <pre><code>from suds.client import Client
  client = Client('http://url-for-my-service?wsdl')
  result = client.service.StartSession('userid','passwd')
  </code></pre>
  
  <p>Here are the error messages I get:</p>
  
  <pre><code>ERROR:suds.client:&lt;suds.sax.document.Document instance at 0x28fcbd8&gt;
  Traceback (most recent call last):
    File "&lt;stdin&gt;", line 1, in &lt;module&gt;
    File "/home/rksmith/Projects/soap/venv/local/lib/python2.7/site-packages/suds/client.py", line 521, in __call__
      return client.invoke(args, kwargs)
    File "/home/rksmith/Projects/soap/venv/local/lib/python2.7/site-packages/suds/client.py", line 581, in invoke
      result = self.send(soapenv)
    File "/home/rksmith/Projects/soap/venv/local/lib/python2.7/site-packages/suds/client.py", line 619, in send
      description=tostr(e), original_soapenv=original_soapenv)
    File "/home/rksmith/Projects/soap/venv/local/lib/python2.7/site-packages/suds/client.py", line 670, in process_reply
      raise WebFault(fault, replyroot)
  suds.WebFault
  </code></pre>
  
  <p>I do kinda like suds better because I can enable logging.DEBUG and get more information:</p>
  
  <pre><code>DEBUG:suds.client:sending to (http://cpldevweb001:3691/Invoke?Handler=CSSoapService)
  message:
  &lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;SOAP-ENV:Envelope xmlns:ns3="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns0="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns1="urn:CSSoapService" xmlns:ns2="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"&gt;
     &lt;SOAP-ENV:Header/&gt;
     &lt;ns2:Body&gt;
        &lt;ns1:StartSession&gt;
           &lt;user xsi:type="ns3:string"&gt;userid&lt;/user&gt;
           &lt;pass xsi:type="ns3:string"&gt;passwd&lt;/pass&gt;
        &lt;/ns1:StartSession&gt;
     &lt;/ns2:Body&gt;
  &lt;/SOAP-ENV:Envelope&gt;
  DEBUG:suds.client:headers = {'SOAPAction': '"#StartSession"', 'Content-Type': 'text/xml; charset=utf-8'}
  DEBUG:suds.client:HTTP failed - 500 - Internal Server Error:
  &lt;SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"&gt;
    &lt;SOAP:Body&gt;
     &lt;SOAP:Fault&gt;
       &lt;faultcode&gt;SOAP:Client&lt;/faultcode&gt;
       &lt;faultcode&gt;Invalid Request&lt;/faultcode&gt;
       &lt;detail&gt;Invalid SOAP Request, most probable incorrect SOAPAction&lt;/detail&gt;
     &lt;/SOAP:Fault&gt;
    &lt;/SOAP:Body&gt;
  &lt;/SOAP:Envelope&gt;
  </code></pre>