Dec-01-2017, 04:22 PM
I have a SOAP webservice wrote in Java and I call it with suds library:
Server raised fault: 'The given SOAPAction ActionName does not match an operation.'
In the wsdl file soapAction is not setted:
def soapclient(request): username='user' password='pwd' base64string = base64.encodestring('%s:%s' % (username, password)).replace('\n', '') authenticationHeader = { "SOAPAction" : "ActionName", "Authorization" : "Basic %s" % base64string } client = Client('http://my_ult_to_file?wsdl', headers=authenticationHeader) var=dict(utenteApplicativo='aaaaa', pageNumber=1, pageSize=1, carrelloDto=dict(idCarrelloSorgente='99999999994', itemCarrelloDtoList=dict(causale='prova', codiceEnte='ente', importo=2, importoImposta=1, importoTotale=3, importoUnitario=2, quantitaItem=1, tipoContabilizzazione='TA')) ) result = client.service.creaCarrello(var) return render_to_response('soapclient.html', {'var': result})but I receive the error:
Server raised fault: 'The given SOAPAction ActionName does not match an operation.'
In the wsdl file soapAction is not setted:
<wsdl:operation name="creaCarrello"> <soap:operation soapAction="" style="rpc"/> <wsdl:input name="creaCarrello"> <soap:body namespace="http://infocamere.it/pagamentionlinews" use="literal"/> </wsdl:input>There is a manner to set soapAction in the client to a value false or similar?