Restlet Framework 2.0 RC2 released

Here is the second release candidate of version 2.0 of the Restlet Framework. Two weeks after RC1, the goal was to fix the blocking issues that were reported due to numerous tests from the community.

In addition, Restlet Framework version 1.1.9 was released, fixing two bugs (setting of custom server name and ISO latin 1 parsing for HTTP BASIC credentials).

Main changes

  • SSL keystores configuration was adjusted for simplicity purpose
  • User and Role classes now implement java.security.Principal interface. The UserPrincipal and RolePrincipal classes were removed from the JAAS extension and JaasUtils#createSubject() now also adds the ClientInfo#principals entries.
  • A ServletUtils class was added to the Servlet extension with two methods to easily retrieve the Servlet request/response.
  • 13 bugs were fixed including one regression with cookie headers handling, WADL/HTML generation, ResourceException not correctly propagating the status code, local conversions between representations and objects, or GWT serialization issues with nested generic types and arrays.
  • Simple Framework libary was updated to version 4.1.20, fixing an SSL issue reported by Restlet users

Direct contributors

  • Bruno Harbulot
  • Carsten Lohmann
  • Kelly McLaughlin
  • Rob Heittman
  • Sirthias
  • Tal Liron
  • Thomas Conté
  • Valdis Rigdon

Thanks to all others who helped us in various ways!

Additional resources

Changes log:
http://www.restlet.org/documentation/2.0/jse/changes

Download links:
http://www.restlet.org/downloads/testing

Maven repositories:
http://maven.restlet.org is updated on the 1st and 15th of each month
http://maven.noelios.com is updated daily with new artifacts (access reserved to subscribers)

Restlet supports OData, the Open Data Protocol

OData adoption

Since the release of our Restlet extension for ADO.NET Data Services in September 2009, many changes happened on this front. Microsoft has been busy enhancing their technology, splitting it into an open specification for the REST API called OData, for Open Data Protocol, and using WCF Data Services for the server-side framework. This article gives an overview of the technology, and this page the full specifications of the protocol.

The OData protocol has also been embraced by IBM in its Java-based WebSphere eXtreme Scale product and Microsoft has leveraged it in several of its products like Excel PowerPivot, SharePoint Server, Windows Azure Table Storage and SQL Server Reporting. Other recent initiatives are the project code-named “Dallas“, which offers a market place for data services with full support for access control and billing, and the OData visualizer part of Visual Studio 2010.

In addition, public OData services are starting to pop-up, like the one to access Netflix’s media catalog. Microsoft has been providing examples via the OGDI initiative and for the MIX’10 conference. Here is a longer list of producers.

Enhanced Restlet extension

While preparing our recent Restlet Framework 2.0 RC1 release, we enhanced our Restlet extension for OData, moving it from the “org.restlet.ext.dataservices” to the “org.restlet.ext.odata” package and adding support for those advanced features:

  • Projections, similar to database views
  • Transparent server-side paging
  • Blobs, to expose media resources
  • Row counts retrieval
  • Customizable Atom feeds
  • Version headers
  • Operations, to expose stored procedures

The extension is also available on the Restlet edition for Android, allowing you to directly access OData services, for example hosted on Azure cloud computing platform, from a smart phone.

The diagram above illustrates how useful the Restlet extension for OData is becoming, as a high-level client for data services powered by a growing number of server-side technologies. For explanation on how to use this extension, read the Restlet user guide page for the extension as well as a detailed tutorial.

Towards standardization

All those initiatives have caught attention with articles and posts like:

An interesting thing to watch going forward is how this technology will be compared with Google Data Protocol (GData) alternative. In his OData Q&A page, Microsoft hopes for a collaboration with Google on an official set of extension to the Atom suite of standards.

Yahoo! has also worked on a similar technology called DataRSS, and finally the W3C is pushing the Linked Data, an application of the Semantic Web, as a way to transform the Web of documents into a Web of data, with technologies like RDF and SPARQL.

Updates:

 

 

Restlet Framework 2.0 RC1 released

The first release candidate of version 2.0 of the Restlet Framework has just been released. This is an important step toward our 2.0.0 version as the features scope has been completed and critical bugs have been fixed.

We can now enter the stabilization phase, fixing as many issues as possible to reach the  level of quality for production applications. We encourage all Restlet developers to review the list of open issues and contribute by entering new issues, adding comments to help fixing them and even better to contribute patches!

Another effort has been started to update the user guide to match the API changes and new features in version 2.0. For example, the table of contents has been simplified, changes since version 1.1 have been summarized and an extensions matrix has been added. This is a collaborative effort and new authors are also encouraged to participate.

Main changes

  • Various cleanings to the Restlet API. Added Expectation and RecipientInfo classes in org.restlet.data to support the HTTP Expect and Via headers.
  • Refactoring and cleaning of all the XML extensions. The dependency from JAXB and JiBX extensions to org.restlet.ext.xml has been removed.
  • Enhanced the CLAP connector to support a default authority (“class”) for shorter URIs (ex: “clap:///org/restlet/Uniform.class”). Added LocalReference#createClapReference(int, Package) and createClapReference(Package) methods to help building shorter CLAP URIs.
  • The Data Services extension for Microsoft ADO.NET/WCF has been renamed to OData as the protocol specification has recently been opened up. Added support for new features such as projections, blobs, server-side paging, row counts, customizable feeds or version headers. See related blog post.
  • 20 bugs have been fixed including one preventing the compilation of annotated interfaces in the GWT edition and another annoying one eating the query part of URIs with the default connector.
  • All the library dependencies have been updated, for example Spring to 3.0.1, Jackson to 1.4.3, Jettison to 1.2, Apache Lucene to 2.9 or Apache Velocity to 1.6.3.

Direct contributors

  • Andreas Schneider
  • Bryan Hunt
  • Carsten Lohmann
  • Daniel Truemper
  • Fabian Mandelbaum
  • Harald Pehl
  • John Wismar
  • Laszlo Megyer
  • Laurent Rustuel
  • Martin Kubincanek
  • Masaki Sudo
  • Nicolas Rinaudo
  • Nirav Shah
  • Rhett Sutphin
  • Rickard Oberg
  • Tal Liron
  • Tim Peierls
  • Xavier Mehaut
  • Zsolt Czinkos

Thanks to all others who helped us in various ways!

Additional resources

Changes log:
http://www.restlet.org/documentation/2.0/jse/changes

Download links:
http://www.restlet.org/downloads/testing

Maven repositories:
http://maven.restlet.org is updated on the 1st and 15th of each month
http://maven.noelios.com is updated daily with new artifacts (access reserved to subscribers)