Moshe Eshel

The eye in the sky - just fell down

  Home  |   Contact  |   Syndication    |   Login
  69 Posts | 0 Stories | 5 Comments | 57 Trackbacks

News

Welcome to my blog, I hope to have here some interesting content for you all to read. However, I'm just starting out in this, so be patient with me.

Article Categories

Archives

Post Categories

Blogroll

News Sites

Well in the past few days I've been reading some posts, which seem to bring back some close by history, James Governor is bored by SOAP and more to the point doesn't understand why vendors don't support REST.  Mike Champion doesn't understand what all the fuss is about.

These are only two articles out of many. Mike kind of makes the point I want to make, and I agree with him completley. This is an old argument, that isn't really an argument at all. Basically everybody agrees on the issue, it just seems that the first side doesn't want to admit it.

Let's examine this: On one side (supposedly) we have REST, a simple way of calling a service through HTTP and getting an answer, in olden days this was some text, today it is usually an XML reply. This is undoubtably very simple to use, and too tell the truth is what I mostly use when developing Web based APIs. On the other hand we have SOAP together with all those WS-* and WSDL and the list goes on... This is a by far more complicated and cumbersome for developers, who rightly claim they don't want to learn this - who does?

The point is that these are actually two complementary solutions, they don't negate each other and can easily live together in the same application. However, they ARE different in a very essential way, as they are similar.

They are similar since both are used to call remote services through the network, actually invoke some function at a remote location (whatever that function may be).

They are different because of obvious reasons,
1. first they don't look the same. SOAP has much more gibberish (to human eyes) than REST. Basically the Calling syntax in REST is more simple than the one in SOAP (though the return can be baffling in both)
2. SOAP supports more methods of network transfer, while rest is very much attached to HTTP (not totally but still)
3. SOAP has a more strict way of making sure the message is OK, does anyone still remember those ugly exploits of IIS, just because of its support of REST (executing some system executable by reaching it through the URL)
4. SOAP supports (through those extensions) a wide array of authentication and encryption, and more... This might not seem as something that you can't do with REST (through SSL and IIS authentication for example). but in the SOAP case it is part of the protocol, and is implemeneted at the Service level, instead of the specific application (it follows a spec). Also SOAP + Extensions support this in more than just request/reponse model. which brings me to the next point.
5. SOAP isn't request response. HTTP is. This allows for just sending status notifications to many delegates without actually knowing them or caring.

I could go on and on, but the conclsion is the same, They are both here to use, use them when they apply, not for show.

One more thing, people are complaining about lack of tools for REST, well first there are many. Each normal webserver supports them by default. No normal CGI/* application server that deals with web ignores them. It is very easy to do it, all you need is a web browser, or some sort of HTTP control to manage the connection. Why do you need more tools than that. SOAP does need advanced tools. It is a complex thing that I can not work without some smart tool to tell me I'm doing it right.

Hope this makes sense to you...

posted on Wednesday, February 16, 2005 5:48 PM

Feedback

# re: My 2 cents about SOAP Vs. REST 2/17/2005 3:56 PM stephen o'grady
my complaint with the vendors vis a vis REST actually is not that they can't support REST development with existing toolsets; it's rather that they - at least in every demo i've attended in the past few years - won't even acknowledge it as a legitimate approach to a certain type of problem.

so i can't speak for my colleague here, but what i'm looking for is vendors to explicitly say, "Yes you can use REST, Yes we recognize that many (or most) of you want to use the approach, and by the way, here's how: here's a tutorial."

i fully agree, incidentally, that REST and SOAP approaches are actually quite complimentary: different tools for different jobs, makes sense. but i've been arguing for a while now that REST is being treated like a second class citizen in the development world, and it simply doesn't make sense to me.

# re: My 2 cents about SOAP Vs. REST 8/4/2006 8:29 PM Dimitar Misev
I am using SOAP extensivelly these days through AXIS, and I was amazed that i didn't have to parse the message myself, but the tool generates the code for that. There might be some performance tradeoff there but still this is very nice

Post A Comment
Title:
Name:
Email:
Website:
Comment:
Verification: