Earlier, I started writing up some thoughts in response to
Jon Udell's Web Services post today, particularly the part about
WSDL Autogeneration. Jon says:
The classes you'll want to annotate for such treatment should, in many cases, be abstractions of those that implement behavior.ÊCreating such abstractions is, of course, more work -- and the kind of work that doesn't easily yield to automation.
Sounds like Interfaces. Which is where my post was going earlier, but I found flaws in my thinking. While I think the following is possible, and may actually work, it will invariably get more complex than this:
wsdl = WSDLWriter.generateForInstance(obj, onlyInterface=IBlogger)shrug. I'm too tired right now to explore this notion too much. The issues I started running into is how much to tie web service or security related metadata attached to an Interface (ie, abstraction) to an implementation. It's an issue they struggled with as Interfaces were starting to get heavily used for "Zope" (particularly in the growing Zope 3 architecture), and I believe such information has been moved to configuration files(?). I could be wrong.
Anyways, as long as we're going in the direction of generating WSDL out of code versus generating code out of
IDL WSDL, things aren't all that bad.
Yet.