Restlet 1.2 is on its way with a first milestone! Let’s review the main changes made since version 1.1…
The refactoring of the Restlet security model has been the most requested change since the Restlet 1.0 release. Fortunately, after a long maturation period, it has finally made a huge step forward, materialized by the addition of an “org.restlet.security” package. The new design is the synthesis of many contributions and discussions from the community.
Therefore, I’d like to especially thank Bruno Harbulot, Stephan Koops, Rémi Dewitte, Raif S. Naffah, Rob Heittman, Roman Geus, Alex Horn and Rhett Sutphin for their precious help. We still have much work ahead to complete and fully implement the new design but there is now a good foundation for feed-back and contributions.
In order to simplify even more the learning and deployment of Restlet applications, the Restlet API and its implementation (ie. the Restlet Engine) have been merged into a single module (ie. JAR, bundle). All engine classes were moved to “org.restlet.engine“.
In addition, all extensions are now located under a “org.restlet.ext” root package. This means that all extensions previously under “com.noelios.restlet.ext” have been moved. Be careful as this will break existing applications relying on those packages. However, as all the classes are still present, the migration should be straightforward, especially if you use the auto-import feature of your IDE.
Note that the core Restlet API has not significantly changed itself, only a few extensions are affected and a couple of classes not typically used by Restlet application developers such as:
- org.restlet.util.Engine moved to org.restlet.engine.Engine
- org.restlet.util.Helper moved to org.restlet.engine.Helper
- org.restlet.util.ByteUtils moved to org.restlet.engine.io.ByteUtils
- org.restlet.util.DateUtils moved to org.restlet.engine.util.DateUtils
Note also, that there were two Spring extensions in Restlet 1.1. Now they are merged under the “org.restlet.ext.spring” extension, led by Rhett Sutphin.
Thanks to a contribution of Kevin Conaway, the internal HTTP client now supports the HTTPS protocol as well, with parameters to configure SSL.
In addition, a Lucene extension has been created to host the Solr client connector contributed by Rémi Dewitte who will lead this extension. There is also a TikaRepresentation available to leverage Lucene Tika subproject when extracting metadata from representations.
Semantic Web initial support
As announced last August when we presented the Restlet 1.2 roadmap, we want to make Restlet a great framework to build applications for the Semantic Web. The relationship between REST and RDF is perfect and builds around the concept of resources and their representations (REST) and the expression of meaningful links between those resources (RDF).
In Restlet 1.2 M1, we have added Literal, Link, LinkReference, LinkSet and RdfRepresentation classes. That makes it easy to build a RDF graph, like you would use a DOM API to build and XML document. We now have to develop the serialization and deserialization logic during the next milestone for formats like RDF/XML and RDF/n3.
- Ben Johnson
- Charles Gay
- Cliff Binstock
- Cliff Binstock
- Daniel Woo
- Eirik Bjorsnos
- Frank Hellwig
- John D. Mitchell
- Jonas Maturana Larsen
- Kevin Conaway
- Nicolas Rinaudo
- Remi Dewitte
- Rob Heittman
Thanks for all others who helped us supporting the community in the discussion list!