On Wed, Jul 11, 2012 at 3:38 PM, Alex <[email protected]> wrote: > Hi Lukasz, > > > I have recently began using rpclib, and as a beginner - I think I will be > able to provide some tips that will help you get started. > > > First of all, it is not clear from your message what you are trying to do: > - a client, i.e. connect to an existing server and call its functions, OR > - a server, i.e. let others connect to your server and call your functions > > > I think you want a client; in that case you should use suds: > https://fedorahosted.org/suds/ > > If you want to build a server, then rpclib/spyne is the right tool for the > job. You can also give a try to Ladon - it is very friendly with beginners > (I managed to set it up and create a server very quickly). > > Eventually I chose rpclib because Burak provided very fast feedback and > because rpclib offered some features I needed. > > > Using suds is very easy, I attached an example I use myself. It connects > to a locally hosted SOAP server; the example assumes that I know the name > of the function I want to call, and that I know all of its arguments - > which I pass via a dictionary. > > Otherwise, you can also use the factory.create function, which will > construct an object for you, and later you just fill in the values, like > this: > > c = Client('http://localhost:7789/?wsdl') > a = c.factory.create('ns1:PhysicalPersonDataRequest') > a.lastName = u'Samurai' > a.firstName = u'Jack' > a.birthDate = u'1945-12-31' > a.idnp = u'1234567890123' > a.icSerial = u'A' > a.icNumber = u'12345' > > result = c.service.RegisterPhysicalPerson(a) > > > I hope this helps. > > Problem with suds is this: c = suds.client.Client('http://localhost:7789/?wsdl') RuntimeError: maximum recursion depth exceeded while calling a Python object
Even if you increase the recursion limit to 10,000 or 100,000 it still fails later with "segmentation fault". So rpclib is my only choice here. ZSI (wsdl2py) doesn't have this problem but I can't figure it out, so I was hoping rpclib would work for me, but I need example of client code. 1. service = someClientCode(url=h'ttp://example.com/LoginService.svc?wsdl') 2. request= RequestObjectforBelowfunction(Username='myuser',Password='mypassword') 3. response=service.GetSecurityKey(request) Thanks, Lucas
_______________________________________________ Soap mailing list [email protected] http://mail.python.org/mailman/listinfo/soap
