I have been tossing around ideas about what a TurboZSI module
would look like.  ZSI, for those who don't know, is a transport
neutral soap library with wsdl support.  Unlike the old SOAPpy module,
ZSI focuses on being a legitimate and interoperable soap
implementation.
    What I am looking for is suggestions on how to best leverage
TurboGears to serve soap services.  TG comes off as somewhat
method-centric, since methods are used to render pages, json, etc.
When implementing a web service it makes more sense to expose the soap
proxy as a class.  This can sort of be seen with twisted, <
http://twistedmatrix.com/projects/web/documentation/howto/xmlrpc.html#auto4
>.  Conversion between xml schema types and python objects is done via
typecodes.  Each function needs to know the request and response
typecode.  I wrote a cherrypy filter similar to the xmlrpc one, and it
works but doesn't buy you much.  I also tried using the TG template
plugins, but the mapping didn't seem natural.
    You're still here? :)  As a first approach I want to get a
top-down model working.  Basically tell a class what wsdl I want to
use, and the methods of that class implement the logic of each method
the web service contains.  Each method should take two arguments (not
counting self): the request object passed in and a shell of the
response object to be populated with the result and returned.  Another
important part is making use of ZSI's wsdl2py and wsdl2dispatch
commands/scripts.  These generate all the type mapping classes
automatically.  Maybe these could be invoked by a tg-admin plugin?
    So I am basically looking for some detailed suggestions on how to
approach this problem.  I can provide more samples if needed, but
would just like to get some interaction to decide on a good approach.

Thanks,
    Charlie

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"TurboGears" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at http://groups.google.com/group/turbogears
-~----------~----~----~----~------~----~------~--~---

Reply via email to