REST Truer To The Web Than WS-*
After the release of RESTeasy 1.0, Bill Burke spoke with Jack Vaughan on how he sees REST comparing to WS-*. In the introduction to the article, Jack starts by giving his views on the actual name: 'Web Services':
The ‘Web’ part of Web services was different, somewhat exploitative. The Web was a popular success, and you have to imagine someone thinking that if they named the latest software architecture after the Web, good things might happen. It wasn’t a big reach; Web services did tend to use the Web’s bread-and-butter protocol, HTTP.
In Jack's opinion (shared by many if previous InfoQ articles are anything to go by) some feel that REST is "truer to the spirit of the web than classic Web services employing XML and SOAP". According to Bill (and again, many others) "The value of REST architecture is that it takes better advantage of Web architecture" and that the reason behind this is rediscovering HTTP and "trying to understand how the web becomes so prevalent.”
Bill goes on to target the WS-* standards, saying that they're too much of a moving target:
Getting vendors to cooperate is hard – ask Apache.
(Let's ignore the fact that all standardization is hard and as a result takes time and effort, including Java and the work behind HTTP, or that efforts such as WSTF and Stonehenge show that Web Services vendors are willing to cooperate inside and outside of the successful standards bodies such as W3C and OASIS.)
But back to Jack, who says that irrespective of the struggles in standards suffered by WS-* (ignoring the fact that it hasn't exactly been plain sailing for the WWW) HTTP has "forged on" so that now everyone has some kind of HTTP support within their infrastructure, meaning that we don't need to worry about that aspect of interoperability. But ...
REST forgoes certain levels of interoperability, but that may have its advantages.
And Bill agrees:
What is cool about REST is you are focused on straight http. So instead of worrying about interoperability between vendors…you worry about interoperability between applications. You let http do the heavy lifting.
To conclude, Bill says that REST isn't anti-SOA (again something that others would definitely agree with), although it is "anti-WS-Star … and SOAP".
is the Web a good model for enterprise applications?
by
Jean-Jacques Dubray
the question that I generally see missing in this kind of argument is: "Is the Web a good model for Enterprise Applications?". In other words, can I model Enterprise applications as a set of resources with a uniform interface?
We have seen last week, that even Tim Bray can't do that. That's quite a setback if you ask me.In his post, he explained how he had to introduce a controller and model actions with verbs. Yacks... Tim's implementation of Sun's Cloud API opens quite a big can of worm.
So we can criticize WS-* for all kinds of reason, I don't mind -we both know how much politics there is baked in- I have no vested interest in it, but at the end of the day, the REST supporters are not using REST in a resource oriented fashion simply because enterprise systems look nothing like the Web and can't be modelled via a series of resources implementing a uniform interface.
So it is pretty clear how all this will end up. As they integrate more and more applications with it, people will first get URI template fatigue, then they'll realize how much of a mess having all these schemaless resource representations creates... so they will start creating all kinds of libraries to automate work that seemed cool to beging with, and we will have accomplished another middleware iteration.
Re: is the Web a good model for enterprise applications?
by
Boris Lublinsky
Re: is the Web a good model for enterprise applications?
by
Jean-Jacques Dubray
It is, IMHO, an error to oppose resource orientation to service orientation simply because 'WS-* standards ... are too much of a moving target'. If that's the problem, let's fix the problem. Ultimately resource orientation, service orientation and event orientation will have to coexist as none can be reified in the others' formalism.
Re: is the Web a good model for enterprise applications?
by
Jean-Jacques Dubray
The shift of one endpoint per service to one endpoint per resource is significant. Service Orientation is simply incompatible with one endpoint per resource.
Re: is the Web a good model for enterprise applications?
by
Francois Ward
Being a web service guy myself, I think the future of that path is with frameworks like WCF, that can leverage web services, but can really swap them for anything if needs be. The "web" part is just a convenient technology, but by no mean a centerpiece in its development. Its just "there", so we use it, but if it vanish, we won't lose sleep over it.
Thats why both REST and WS-* need to stay, and why the argument as a whole is irrelevent...they answer totally different business needs.
Educational Content
Writing Usable APIs in Practice
Giovanni Asproni May 19, 2013
Concurrency in Clojure
Stuart Halloway May 17, 2013




Hello stranger!
You need to Register an InfoQ account or Login to post comments. But there's so much more behind being registered.Get the most out of the InfoQ experience.
Tell us what you think