Re: supporting SOAP-GET MEP (was: Re: service references)

"Paul Prescod" <paul@prescod.net> writes:
> 
> I can't say what will and won't show up at the programmer level because 
> it depends on WSDL features that AFAIK are not done yet and how those 
> are bound into future versions of programming languages.

The way programmers are using WSDL today (and I imagine in the
near future) is typically as a thing to feed a stub generator
that creates a stub for the service in their environment. This
has nothing to do whether the service is bound to a document-style,
RESTful, GET only, SOAP RPC only, SOAP-GET, RMI/IIOP, COM or whatever.
All those are binding details and are hidden in the stub. 

That's what I meant by the programmer will not care by what
binding is indicated in the WSDL - all they really care about
is the abstract part of the service.

> Here's what is messy:
> 
> Let's say I have a purchase order item/object/instance/entity/thing. If 
> I want to GET the item's XML representation, I use the GET MEP and 
> address the thing directly.
> 
> GET http://www.someobject.com/purchasing_service/purchase_orders/1
> 
> If I want to, let's say, mutate the thing, I have to do that through the 
> service endpoint:
> 
> POST http://www.someobject.com/purchasing_service
> 
> <soap:stuff>
> ....
>     <add_item>
>        <purchase_order_instance_id>1</purchase_order_instance_id>
>        <item>Shoes</item>
>     </add_item>
> </soap:stuff>
> 
> It should be uniform. I should GET directly to the purchase order URI 
> and POST directly to it. I should never have to indirect through the 
> purchasing service URI (as is common today).

What you're describing above is a pattern for how services should
work. As a WSDL guy, that's not my problem: we only make the (WSDL)
gun; you shoot it any way you like. The RESTful ones amongst us
will probably do pure HTTP GET bindings while the CORBArians amongst
us will probably do pure SOAP RPC (or should I say IIOP) bindings.
Everything in between is supported too.

Sanjiva.

Received on Tuesday, 24 September 2002 14:32:50 UTC