RESTful Java with JAXRS 2.0 is a book for experienced Java developers that want to get a grip on the mechanics of RESTful web services. It starts off with a personal introduction from the author Bill Burke, explaining why anybody should bother with RESTful at all. He mentions his experience with SOAP based web services or CORBA and how other fellow developers he met in his life finally moved from these technologies to RESTful web services. At this point I would much rather have gotten a list or a more detailed explanation for the “why” it is better to use REST than to use SOAP. Some points the reader realizes while reading the book of course, like
the API which is defined by the protocol standard HTTP or that it is stateless or that one
accesses resources directly. But the book lacks some personal conclusion to why and when to
prefer REST over SOAP or any other technologies.
Except from that, the book is a classical workbook, it opens with basic explanations of what you
need to understand REST, then immediately introduces JAXRS 2.0 and how Java code will look
when you start developing your first RESTful web service with it. It goes into detail about all the
matching and parameterizing of method calls and even sometimes how it works underneath its
simple API. Also one chapter is about HATEOAS which I had not heard about at all before I
picked up this book. That first part basically introduces all concepts and techniques you need to
understand with JAXRS and to successfully try out the second part of the book: the actual
workbook. I as a developer who needs to do stuff rather than read about it, liked this part more
than the first, as you actually jump into the code with the author and try out the things you so far
just read about. The examples in the definition and explanation part as well as the actual
example part are based on each other, so you act in one set of semantics and vocabulary while
reading the book, which is a good thing and as it should be done for any good workbook.
Otherwise the reader would get confused very quickly.
As mentioned before, for me this book lacks a serious recommendation why to prefer REST
over e.g. SOAP. As a JAVA developer working often with SOAP at work (inhouse products and
with customers), I was looking for other opinions, especially from the author and his mentioned
colleagues. So I will have to stick with the opinion that I came up with myself and if possible will
give REST a try in one of my upcoming projects.