Anything Else

Sunday, September 25, 2005

SOAPed Django

After XMLRPC, I have added SOAP support for everyone's favourite web framework: django. Yet another thing out of my ToDo list, looks like Gera's advise is working good for me :-).

SOPA implementation is derived[copied] heavily from Server.py from SOAPpy distribution, so API's are the same as well as every configuration setting is done as usual with SOAPpy's Config class. Though it works, I do not like it, for the simple reason that NO SOAP server/client implementation should bypass WSDL for compatibility's sake, which our beloved Microsoft has made the biggest problem in SOAP world. Whats really annoying is PHP's SOAP implementation by PEAR supports WSDL by server but SOPApy does not, [tho the REDAME hints on the contrary]. Obviously type reason as mentioned by Charles Moad doesn't hold as 1) PHP beaing a weakly typed language can support it so why can't python which is strongly typed 2) SOAP implementation has to know about the type or else it can not convert them to SOAP packets, now if they know why can't they varify it against some WSDL? Trying to generate WSDL programmatically is evil, you go in that direction and the first thing you find is WSDL's generated by Visual Studio and your soul cringes trying to make everything compatible with them, bad bad bad. Ruby does it, but I won't like to see it in python world.

Ofcourse all this has little to do with django per se, its just the state of affairs with SOAP and python right now, as far as I can see. Assuming SOAPpy is good, SOAP support for django, available here for now, ticket for adding it to django is pending, is acceptable. Its implemented as a callable view object, and implements the SOAPServerBase for registering functions and instances. Map url to the view and you are good to go.

Labels: Python Programming Invented Here Django

If you find this post useful, please conside buying me a pizza!

0 Comments

<< Home