Restlet has an extensive list of extensions for Spring, WADL, XML, JSON as well and many more, including an extension for JAX-RS API.
It is also the sole framework available in four consistent editions:
- Java SE
- Java EE
- Google Web Toolkit
- Google AppEngine
- Android
Its main benefits are:
- fully symmetric client and server API when JAX-RS was designed for server-side processing
- connectors for other protocols than HTTP (mapping to HTTP semantics) when JAX-RS is HTTP only
- much broader feature scope including full URI routing control via the Restlet API (but can integrate with Servlet if needed)
- full provision for NIO support
The JAX-RS API can be a good choice if you are restricted to JCP approved APIs (then don't use Spring or any extension of the JAX-RS projects like Jersey and RESTeasy!), but otherwise Restlet is the most mature framework (initially released in 2005) and will give you, in its 2.0 version, all the benefits of annotations combined with a powerful and extensible class-oriented framework.
For a longer list of features, please check this page.
Best regards,
Jerome Louvel
Restlet ~ Founder and Lead developer ~ http://www.restlet.org