Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

About the TclSOAP tutorial on ibm developerWorks...

10 views
Skip to first unread message

Petasis George

unread,
Jun 13, 2001, 1:43:29 AM6/13/01
to
Hi all,

Just a simple question: what is SOAP4Tcl and where can be found?
I only know TclSOAP 1.3. The tutorial says about SOAP4Tcl 1.3
that is derived from TclSOAP 1.3. But I could find a url for that.
In the article it is stated that can be downloaded from the
developerWorks "open zone". But I couldn't find it there either.

Please, can someone post the url?

Also, a question about soap. From what I understand, soap uses
xml to form queries and answers. What happens if the data I want
to send is already in xml? What I want to do, is to send an xml
document to a server. The server will process it, and will return
a non xml file. Can soap be used for this interaction?
I know that this can simply be done with a socket. But also
integrating soap is not difficult, as both the server and client
already include xml and tclhttpd...

George

Cameron Laird

unread,
Jun 13, 2001, 8:13:48 AM6/13/01
to
In article <3B26FD81...@iit.demokritos.gr>,

Petasis George <pet...@iit.demokritos.gr> wrote:
>Hi all,
>
>Just a simple question: what is SOAP4Tcl and where can be found?
>I only know TclSOAP 1.3. The tutorial says about SOAP4Tcl 1.3
>that is derived from TclSOAP 1.3. But I could find a url for that.
>In the article it is stated that can be downloaded from the
>developerWorks "open zone". But I couldn't find it there either.
>
>Please, can someone post the url?
>
>Also, a question about soap. From what I understand, soap uses
>xml to form queries and answers. What happens if the data I want
>to send is already in xml? What I want to do, is to send an xml
.
.
.
SOAP4TCL isn't public yet. DeveloperWorks (dW) means
well, and tries hard, but I think most of us recognize
by now how tough it appears to be in practice to set
up a SourceForge-like facility.

SOAP4TCL is just a re-branded TclSOAP, at least at
this point--all honor to Pat Thoyts, by the way. I
want them always to be the same. If anyone's interested,
I'll cheerfully explain more of the licensing complexities.
The summary is this: Pat's done all the work, and
SOAP4TCL is s'posed to be a mechanism for publicizing his
accomplishment more. Also, it's a base for WSDL4TCL and
UDDI4TCL; these, on which I'm working now, have the
potential to push Tcl back to the lead among Web Services
language bindings.

How do you send XML data? That's a good question. At
this point, just serialize it into a string, and send
that. I imagine that seems a bit silly; it's the right
thing to do, for now.
--

Cameron Laird <cla...@NeoSoft.com>
Business: http://www.Phaseit.net
Personal: http://starbase.neosoft.com/~claird/home.html

Pat Thoyts

unread,
Jun 13, 2001, 8:43:59 PM6/13/01
to
Petasis George <pet...@iit.demokritos.gr> writes:
> Also, a question about soap. From what I understand, soap uses
> xml to form queries and answers. What happens if the data I want
> to send is already in xml? What I want to do, is to send an xml
> document to a server. The server will process it, and will return
> a non xml file. Can soap be used for this interaction?
> I know that this can simply be done with a socket. But also
> integrating soap is not difficult, as both the server and client
> already include xml and tclhttpd...
>
> George

You should be fine passing in XML data. It will need to be quoted
properly as per XML specs ie: < as &lt; etc.

Here is a brief example using TclSOAP and tclhttpd as the server.
I run these commands under TkCon...

source tclhttpd3.3/bin/httpd.tcl ;# start the web server
package require SOAP
package require SOAP::Domain
SOAP::Domain::register -prefix /soap -namespace zsplat::Test

# Define a server procedure to return some XML
proc xml {} {
return {<?xml version="1.0" ?><Memo/>}
}

SOAP::create zxml -proxy http://localhost:8015/soap/xml -uri zsplat-Test
zxml

returns <?xml version="1.0><Memo/>

and SOAP::dump zxml returns

<?xml version='1.0'?>
<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/1999/XMLSchema"><SOAP-ENV:Body><ns:return xmlns:ns="zsplat-Test" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"><return xsi:type="xsd:string">&lt;?xml version=&quot;1.0&quot;?&gt;&lt;Memo/&gt;</return></ns:return></SOAP-ENV:Body></SOAP-ENV:Envelope>

If you have problems you could always pack up the XML as base64
encoded data and send that instead.
--
Pat Thoyts mailto:p...@zsplat.freeserve.co.uk
http://www.zsplat.freeserve.co.uk/resume.html
PGP fingerprint 2C 6E 98 07 2C 59 C8 97 10 CE 11 E6 04 E0 B9 DD

0 new messages