It seems that every time I try to describe some aspect of Web Services by contrasting it with vaguely similar concepts from distributed objects, someone always gets on their high-horse and jumps down my throat (horse and all).
I'm not knocking distributed object systems when I talk about Web Services. When I point out that some things are different by default in Web Services, I get earful after earful, usually from the CORBA faithful, who think I'm putting the boot in.
I'm not trying to put the boot in. Nothing could be further from my mind.
When Savas and I wrote the WSDL is Not Yet Another Object IDL article, we saw that the models are very different. In a distributed object environment, location-transparent method calls (using IIOP and managed by ORBs) on (IDL-described) objects are the norm. Whereas in a Web Services environment, messages (defined by WSDL) are exchanged (again WSDL defined) with Web Services (hosted by a SOAP server at an explicity known location).
There is no notion of location transparency, and no notion of method call in Web Services. This makes Web Services very different from distributed object systems and shows how different WSDL is from an object IDL. It is a flawed value judgment to assume that one is somehow "better" than the other in an absolute sense, but people still seem to want to argue about it.
So how does one get the right end of the stick? First get the right stick for the right job...