What is REST?
A simple definition is:
REST is a way of thinking, not a protocol or standard; it's a style of designing loosely coupled Web applications that rely on named resources - in the form of URLs (Uniform Resource Locators), URIs (Uniform Resource Identifiers), and URNs (Uniform Resource Names), for instance - rather than messages.
REST supports CRUD (create, read, update, delete) type of actions through HTTP requests: POST, GET, PUT and DELETE, respectively.
Java REST framework: Restlet
Restlet is a lightweight java framework that implements REST and can be found at www.restlet.org.
Restlet applications are similar to servlet applications because they reside in the container, but they are different because:
- restlets don't have anything to do with HTTP and its stateful artifacts (ie. cookies, session, etc.)
- restlet framework is extremely lightweight.
It's based on few classes: abstract Application, Resource, Router, Variant.
Resource types in the Restlet framework are known as Restlets.
Read more about Restlet: http://www.restlet.org/documentation/1.0/tutorial
An expample of an REST API can be found here: http://developer.yahoo.com/traffic/rest/V1/