Earlier this week, Microsoft posted the long awaited "SOAP Toolkit for Visual Studio 6.0" at http://msdn.microsoft.com/xml/general/toolkit_intro.asp. This toolkit was first announced at VBITS, San Francisco and was originally scheduled to be released in March 2000. The file to be downloaded is a 1.23 MB self extracting executable.
After extracting the relevant files to your hard disk, the first place to start is the Readme.txt file that is available under the directory where the files were extracted. The initial excitement quickly fades away after reading the requirements, which I have reproduced below.
For SOAP client, Microsoft Windows 2000 (Professional or Server) is required.
For SOAP services server, IIS 5.0 is required.
For development, Microsoft Visual Studio 6.0 with SP3 is required.
Windows 9x are not supported in this release.
Only limited tests have been run on Microsoft Windows NT 4.0 SP6a with IIS 4.0 and IE5.0.
The fact that Windows 9x is not supported immediately rules out using this toolkit for any client side development (at least for most commercial products). Also the fact that limited testing has been done on Windows NT 4.0 + SP6a as well as IIS 4.0 implies that only a few brave souls will attempt to use it on that platform. Even though Microsoft has not committed to it, it seems unwise not to support Windows 9x SOAP clients in the future.
For getting a good introduction to the toolkit, reading through the SOAPTK.chm is a must. This introduces the various technologies that are used within the toolkit as well as introduces the term ROPE (Remote Object Proxy Engine). ROPE is essentially the infrastructure developed by Microsoft for SOAP clients and servers. One does not have to use this infrastructure but it makes things easier for those familiar with the Microsoft platform and technologies.
Many of us may have first heard about ROPE after the recent incident wherein Microsoft sent it's lawyers after an ex-consultant who was to talk about ROPE at a Seattle area JAVA SIG while he was under NDA. Additional details about this can be read at http://www.theregister.co.uk/content/archive/10986.html.
Running the sample SOAP client
The only thing required to test the demo Visual Basic SOAP client is to register ROPE.dll using a utility like RegSvr32.exe. Microsoft has already setup a server at
http://18.104.22.168/SOAPDemo/services.xml so all you need is access to the internet. Detailed instructions are available within the "ROPE Samples Tutorial" section of SOAPTK.chm. Reading the "Troubleshooting the SOAP Toolkit" section is also recommended.
If you do not have the Visual Studio 6 Enterprise Edition installed on your machine, you will get a compile error "Can't find project or library'. The culprit is the line 'Dim r As Registry'. This can be rectified as follows
- Click on the 'Project | References' menu item and deselect the 'Registry Access Functions' entry which will be flagged as MISSING.
- Comment out or delete the 'Dim r as Registry' line.
Everything should work fine after this assuming you are running on a Windows 2000 machine and have access to the internet.
I first heard about 'Web Services' on the MSDN Show "Conversations on XML and BizTalk'. One of the MSDN programmers describes a fire drill that he and his team went through for a new concept called 'Mega Services' that was to be demonstrated by Steve Ballmer sometime last year. The power of this was immediately apparent and the MSDN team has built this toolkit around all the infrastructure code that was developed by their programmers. Just prior to the demo, the name was changed to 'Web Services'.
The basic idea of a Web Service is to enable non-browser clients to access information from a web server. Additional details can be obtained by watching the above MSDN Show ('Enter the programmer' segment) or reading the 'An Introduction to the SOAP Toolkit' section of SOAPTK.chm.
The SOAP Toolkit Wizard
This Wizard will create the source files for your own SOAP service from a COM object you have developed or have access to. The 'Guide to using the SOAP Toolkit Wizard' section of SOAPTK.chm describes the various steps required to create a custom web service.
COM+ 2.0 and Visual Studio 7.0
Even though COM+ 2.0 was previously mentioned on the WINDEV and iDevResource sites, this is the first official mention from Microsoft that I have seen. Also interesting is the fact that COM+ 2.0 is mentioned with Visual Studio 7.0 which could be interpreted as the latter having full support for the former.
The Future of the SOAP Toolkit
This first release of the toolkit was released by MSDN. Full source code for the ROPE.dll module as well as the ASP and ISAPI listeners is included. The next major release is planned for the Microsoft Professional Developers Conference in July 2000. This will be a joint effort between the MSDN group and a product team.
After the second release, the product team will fully control the toolkit while MSDN will provide guidance and sample code for some of the common, difficult problems we are going to solve using SOAP.
The Future of SOAP
Even though Userland, Developmentor and Microsoft came up with the initial SOAP specification, IBM and Lotus Development Corporation were involved with the SOAP 1.1 Specification (http://msdn.microsoft.com/xml/general/soapspec.asp#_Toc478383486). I also read today that SUN Microsystems has also decided to join the SOAP bandwagon. This guarantees that SOAP has a solid future.