Calling WS-* from AJAX

Last night, Kirk Evans invited me up to his WS-Cocktails party on the roof of The Standard, a redux of WS-Sushi (aka Rorygate). Rory wasn’t there (although there have been sightings here), but I got to talk with a bunch of WS-* and Indigo people.

One of the things that came up in my discussions with a number of people is the hole in our story for connecting AJAX/RIA and WS-*. Dare suggests that customers bring up this topic with product group folks at the PDC. I think people have been aware of this issue for some time, including Dare. I really began thinking about it, however, a couple of months ago when having lunch with Mark Fussell. He pointed out that the original SOAP toolkit enabled people to make SOAP calls from within IE, but the WS standards have moved on since, and there is no reliable built-in way within IE to call Web Services that use the newer WS-* specs.

The right answer might be to have the WSE team (or at a minimum, Indigo) ship their stuff in such a way as to be installable via ActiveX installer (for both IE and Mozilla) on web pages, and include the proper ActiveX support to call the WSE stack from JavaScript. This would still leave out Mac and Linux, but it’s a good start. The alternative is to wait until the browser vendors on all platforms deliver native support for WS-*, and I really don’t see that happening. Even if a large portal forms an alliance with one of the browser vendors, and pushes support into the browser, it would probably be incomplete and biased toward scenarios that company cares about most.

Finally, I’m not sure if it’s that big a hole, really. Installing heavy client stacks kind of defeats the point of AJAX. If you have enough control over the machine to install a heavy client stack, you might as well install .NET and use Winforms. As Dare pointed out earlier in the week, lots of AJAX developers prefer low-tech interfaces between client and server, and things using heavy WS-* stack are under the covers, deep integration with service partners, enterprise app integration, and so on.

Leave a Reply