- February 13, 2014

We are happy to release two new Restlet Framework versions: 2.2 RC1 and 2.1.7, quickly moving forward towards version 2.2.0 and beginning work on the 3.0 branch. Check out the updated road map for details.

Don’t forget to download A Field Guide to Web APIs from Kin Lane, API Evangelist. It’s a comprehensive developer guide, covering history of web APIs, technology used, cloud trends etc. If you want a preview before downloading the full guide, check out our previous blog post.

What’s new?

2.1 branch (stable)

Since announcing the release of the 2.1.4, we fixed several issues including:

  • XML External Entity injection security fix (please read our technical note and upgrade)
  • Generation of HTML representation of a WADL document
  • Complete the content-type header with the right boundary parameter value when using multipart representations
  • Status reason phrase set by the Jetty connector
  • Service-Component header missing in for Servlet extension in OSGi edition
  • OData not passing null when property not marked nullable
  • EncoderService exposes lists of ignored and accepted media types
  • Base64 characters padding to encoded MD5 hash before decoding.

In terms of enhancements, we added:

  • Support of nowrap “deflater” (support of GZIP compatible compression)
  • Ability to override Accept-encoding header values
  • WritableSocketChannel write loop to ensure all data has been written

Logo Restlet Framework

2.2 branch (testing)

In addition to the 2.1 branch fixes, we also solved six bugs including:

  • Declaration of Gson’s maven artifact identifier
  • Android ICS and HttpUrlConnectionCall.getResponseHeaders
  • The @Patch annotation was ignored

As well as numerous enhancements:

  • Updated over 25 dependencies (Jetty, Apache, MongoDB, etc.)
  • Added a Message#bufferEntity() method
  • Moved BufferingRepresentation from Engine to org.restlet.representation package
  • Added client support for HTTP OAuth MAC authentication
  • Added Javadocs artefacts for Maven repository
  • Added Thymeleaf templating extension
  • Improved ServerServlet.createComponent()
  • Added Swagger extension (only JAX-RS API support for now)

And made the following changes to Restlet Core (API and Engine):

  • Added new internal HTTP/HTTPS server connectors based on the package available in JDK 6
  • Moved HTTP/HTTPS/FTP client connectors into the core org.restlet module ( package) as the new internal client connectors
  • Moved NIO-based internal connector to new org.restlet.ext.nio extension. Marked as “developer preview” state.
  • Moved org.restlet.ext.ssl into core org.restlet.engine.ssl package except classes related to the jSSLutils library now part of new org.restlet.ext.jsslutils extension and for CertificateAuthenticator class now in
  • Deprecated MediaType#APPLICATION_RDF_TURTLE and added TEXT_TURTLE constant

Recent contributors

  • Alvaro Munoz
  • Andy Dennie
  • Bobby Sawhney
  • Carl J. Mosca
  • David Roussel
  • Grzegorz Godlewski
  • Ioan Lupu
  • Jason Guild
  • Luke Adams
  • Peter Ansell
  • Ralph van Etten
  • Tal Liron
  • Xiaoping Feng

Thanks to all others who helped us in various ways.

Additional resources

Changes log:

Download links:

Learn more:
Tutorial, User guide, Javadocs
A Field Guide to Web APIs by Kin Lane

For more updates:
Follow Restlet Framework on Twitter (@restlet_org)