On Tuesday 06 May 2008 02:18, Stefan Sobernig wrote: > Besides, Web Services for Tcl is based upon the TclOO package by Donal > K. Fellows which is not (besides other issues) multi-threading/ > AOLServer compatible (no serializer etc.)
Web Services for Tcl isn't based on TclOO and it doesn't have any issues with multi-threading. The client works great. I have used it to test all of my WSDL example services. Here is an example of how to use it: http://junom.com/document/windows/TWiST/WS::Client.TXT I think I just used the ActiveTcl version of Tcl8.5. I'm not sure what it means to not have a serializer. Once WS::Client gets the WSDL file, you can create 'stubs' for each operation. Then you just feed it a list (without the element names, just data). A 'dictionary' is returned, which includes the element names (usually this could be fed directly to [array create] for simple structures). The problem with the WS::Server running with AOLserver is that it uses the tclhttpd API for I/O (biggest problem), but also uses many tclhttpd'isms to create web pages for documentation, etc. tWSDL with the TWiST API has a very thin connection to AOLserver. The same services, with the same TWiST configuration file can run under nstclsh, tclsh, tcpserver or even using a shell pipeline. The tclsh version can run using Tcl socket, or using Tcl Threads (recommended). The tcpserver version is great during application development because everything is sourced up from scratch for each request. As a WSDL server, the best feature of tWSDL is that you can define and derive types based upon the XML-Schema definitions, and you can validate documents against the type. Once defined, types are easy to create by feeding the type's 'new' API with a Tcl list (with no element info, just data). I haven't found any other WSDL toolkit which can derive simple types from XML-Schema types or easily create complexTypes where minOccurs > 1. With tWSDL a single TWiST 'configuration' file completely defines the web service interface, there is no hand writing WSDL files or hand coding type validation, and your internal API remain independent of the external operation interface. tom jackson -- AOLserver - http://www.aolserver.com/ To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> with the body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: field of your email blank.
