python - How to solve No operation available for request in SUDS? -


first imported suds client , logging

from suds.client import client sudsclient import logger  logging.basicconfig(level=logging.info) logging.getlogger('suds.client').setlevel(logging.debug) 

i provided 2 wsdl files, enterprise.wsdl , programmerclienthandler.wsdl.xml. used enterprise.wsdl login by:

# authentication , more information set enterprise_client = sudsclient(enterprise_url) response = enterprise_client.service.login(username, "%s%s" % (password,token)) 

then i'll sessionid , serverurl transfer suds client object

session_id = response.sessionid server_url = response.serverurl  soap_header = enterprise_client.factory.create('sessionheader') soap_header.sessionid = session_id 

then direct suds client user server_url given

programmerclienthandler_client = sudsclient(handler_url) programmerclienthandler_client.set_options(soapheaders=[soap_header]) programmerclienthandler_client.set_options(location=server_url) programmerclienthandler_client.set_options(port = 'programmerclienthandler') 

if print programmerclienthandler_client shows this

service ( programmerclienthandlerservice ) tns="http://soap.sforce.com/schemas/class/axlea/programmerclienthandler" prefixes (1)   ns0 = "http://soap.sforce.com/schemas/class/axlea/programmerclienthandler" ports (1):   (programmerclienthandler)      methods (1):         getprogrammerclientxml()      types (5):         id         logcategory         logcategorylevel         loginfo         logtype 

now need call getprogrammerclientxml() function by:

 programmerclienthandler_xml = programmerclienthandler_client.service.getprogrammerclientxml() 

now when call error:

debug:suds.client:http failed: <?xml version="1.0" encoding="utf-8"?><soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:body><soapenv:fault><faultcode>soapenv:client</faultcode><faultstring>no operation available request {http://soap.sforce.com/schemas/class/axlea/programmerclienthandler}getprogrammerclientxml</faultstring></soapenv:fault></soapenv:body></soapenv:envelope> error: error: server raised fault: 'no operation available request {http://soap.sforce.com/schemas/class/axlea/programmerclienthandler}getprogrammerclientxml' 

what should make work? there problem in wsdl files?

the serverurl returned login enterprise api, you're not using that, shouldn't change endpoint url of programmerclienthandler_client stub, correct.


Comments

Popular posts from this blog

c++ - Is it possible to compile a VST on linux? -

java - Output of Eclipse is rubbish -

jquery - Confused with JSON data and normal data in Django ajax request -