![]() |
SOAP |
![]() |
.NET uses SOAP as its protocol for representing both data and commands. In short, web services use SOAP as their "interface" to the outside world. .NET also provides a Web Services Description Language - similar in purpose to the IDL used by binary object standards like COM and Corba - to allow a service provider to describe what specific data and commands are accepted by the service. WSDL is also based on XML grammar. Finally, "SOAP discovery" allows a user looking for a service to find that service's description and its capabilities (WSDL).
Hence, any web service can expose itself programatically over the Internet using open standard, non-proprietary protocols. Any user can use the web service through these protocols. The .NET Framework will provide API calls to make these web service calls easier. And because SOAP is platform independant, web services can be written for and used by any operating system and any distributed object model.
Because of SOAP being the underpinnings for web services, what does this mean for distributed object systems like COM?
It means in short that COM isn't going away anytime soon. Thanks to .NET, any COM object will look like a web service, and any web service can be made to look like a COM object. So the billion-dollar industry that has grown up around providing programming components need not start to sweat.
What it does mean is that you now have the best of both worlds: a nice distributed object system like COM with all the advantages of loose coupling. Mixing DCOM with RMI or Corba becomes instantly possible.
References: B,E