As part of the work for the web services book, I've been writing some slightly-larger examples of working with SOAP servers, specifically using SOAP::Lite. Last night, I was delighted when the stuff I had written worked like a charm with the server running from one xterm, and the client on a second (but on the same host). So tonight, I rsync'd files over to a separate machine, and (after a few embarassing typos) of course it works like a charm. It's easy to forget how convenient and time-saving a good, clear interface can be. I don't mean SOAP in general, I mean SOAP::Lite in particular.
It's easy to forget because we easily become accustomed to using software that is in perpetual alpha, or barely into beta. Look at Red Hat Linux, and how many of the packages have version numbers that start with zero. It's not a fault on the part of Red Hat-- if they want to offer packages like pan, PyGTK, ORBit, etc., they have to use what they can get. Relying on open source means relying on open source authors, and that means that sometimes even an "old standby" like talk has a version of 0.17.
So, kudos to a clean, stable interface, even at the ripe young age of 0.55. What's more, I was able to launch the server with a one-line. A fully-functional SOAP server in just:
perl -MWishListCustomer -MSOAP::Transport::HTTP -e \ 'SOAP::Transport::HTTP::Daemon->new(LocalAddr => myhost => \ LocalPort => 9000)->dispatch_with({ "urn:WLC-test" => "WishListCustomer" \ })->handle'
More things should be that clear and simple.
--rjray
Human beings, who are almost unique in having the ability to learn from the experience of others, are also remarkable for their apparent disinclination to do so. -- Douglas Adams
--nat
Re:Some would say ...
autarch on 2002-05-15T16:05:12
It's definitely not clear. But it is idiomatic, which is more important. And it's simple, which is also important. In other words, it's something you can learn to do just once and then apply easily over and over.Re:Some would say ...
rjray on 2002-05-15T22:54:45
... that your four liner was far from clear :-) Hmph. Perhaps clearER than it would have been had I not put in the line-breaks for readability and let <ecode> cause your browser to scroll off to the right.
Everyone's a critic. Err, wait, I guess you're my editor, not my critic...