Web services followed on the first flush of Java in the late 1990s. They might have been called something else. ‘Services’ made a certain sense because the term ably conveyed a difference from then-reigning object technology. People were ready for the services part. People understood that a waiter did not need to grow or make the coffee – or carry a coffee canister on their back, for that matter – in order to ‘serve’ coffee to you.
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.
That brings us to REST, which some people feel is truer to the spirit of the web than classic Web services employing XML and SOAP albeit over http.
The value of REST architecture is that it takes better advantage of Web architecture, indicated Bill Burke, RedHat Fellow, former Chief Architect for JBoss, certainly one of the most startling successful open-source Java implementations of all time. Burke is now Contributor to JBoss and a Project Lead on the JBoss RESTEasy Project.
“The crux of it is rediscovering http – trying to understand how the web becomes so prevalent,” he said. “SOAP only uses a bit of the http protocol. It really uses http only as a transport mechanism, like a socket.” We talked to Burke on the eve of TheServerSide Java Symposium in Las Vegas. At the event, Burke will lead a session entitled ”Putting Java to REST: The New Java + RESTful Web Services Specification.” [This event is presented by TheServerSide.com, SearchSOA’s sister publication.]
Burke maintains that the whole slate of standards known as “WS-*” [“WS-‘Star’”] have become too much of a moving target. “Getting vendors to cooperate is hard – ask Apache,” he chides.
Still, http has forged on. Now every platform supports http, so you don’t need infrastructure at both ends of the pipe.
REST forgoes certain levels of interoperability, but that may have its advantages.
Burke says: “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.”
Being the SOA guy I have to ask questions like ”Is REST anti-SOA?” Not at all, says Burke, although he is ready to say REST is anti-WS-Star … and SOAP.