jump to navigation

Restlet Framework 2.1.2 and 2.2 M3 released March 8, 2013

Posted by Jerome Louvel in APISpark, Restlet Releases, Uncategorized.
add a comment

We are happy to release two new versions of Restlet Framework along with the start of the public beta of APISpark.

Brand new web sites

The design of the project web site didn’t change for more than 4 years. It was time for a fresh new start!

During this redesign effort, we had several goals in mind:

  • Easier discovery of the framework
    • main features overview (with visual icons)
    • user quotes, first steps tutorial, FAQ
  • Cutomized download experience
    • we remember your preferred release/version and edition
    • customized Maven and Eclipse update instructions (TBD)
  • Improved documentation
    • migration of old wiki’s to new site (Learn and Participate sections)
    • easier contribution with GitHub MarkDown and Pull Requests
    • unified roadmap (old site and developers’ wiki pages merged)
  • Easier navigation between our connected web sites:
  • A more modern look & feel
    • based on jQuery
    • new logo!

Logo Restlet Framework

Please be aware that the migration of the old wiki content is still underway and that there are broken links and missing images. For those who want to help us fix those issues, please use the GitHub repository for those web sites and submit pull requests.

2.2 branch (testing)

In addition, here are the main changes made:

  • Added JSONP filter to wrap JSON representations as JS callbacks
  • Refactored OAuth 2.0 extension to a single public package (see JavaDocs)
  • Refactored JacksonRepresentation to merge the JacksonSmileRepresentation
  • Added Request/Response.flushBuffers() method to force IO flush
  • Removed old code deprecated in version 2.1
  • Added HTTP PATCH related methods to the ConverterService, ClientResource and ServerResource
  • ConverterService is now more explicit about errors, throwing IOExceptions
  • Refactored Role support to facilitate comparison, adding parent Application property
  • Moved TaskService from Application to Component, to share it between apps
  • All bugs fixes from version 2.1.2

2.1 branch (stable)

We also release version 2.1.2 fixing a dozen of bugs including:

  • Stabilization of the internal HTTP/HTTPS connector (more work needed)
  • IPv6 addresses support
  • XSLT Transformer and TransformRepresentation chaining

Recent contributors

  • Brian Sletten
  • Cyril Lakech
  • Daniel Halperin
  • Koen Maes
  • Mark Kharitonov
  • Martin Svensson
  • Neha Saini
  • Nicolas Rinaudo
  • Peter Ansell
  • Reddy Lakshman
  • Tim Peierls
  • Yan Pujante

Thanks to all others who helped us in various ways.

Additional resources

Changes log:
http://restlet.org/learn/2.1/changes
http://restlet.org/learn/2.2/changes

Download links:
http://restlet.org/download/

Restlet Framework 2.1.1 and 2.2 M1 released December 26, 2012

Posted by Jerome Louvel in OSGi, Restlet Releases.
add a comment

We are happy to release two new versions of the Restlet Framework today. After a rather lengthy 2.1 release cycle due to the writing of the ‘Restlet in Action’ book, we want 2.2 development to last one year, with a release planned in summer 2013. See our detailed roadmap.

Stable 2.1 branch

We first released version 2.1.1 which fixes a dozen of bugs and marks the “2.1″ branch as the new stable branch. As a result, the “2.0″ branch has now reached its end of life, after about two years of maintenance since the release of 2.0.0. New releases will only be made if critical security bugs are found or for customers with professional support plans.

We now encourage everyone to migrate to version 2.1.1 for their Restlet applications in production, which should be easy from 2.0. See our migration guide for help on that front.

The internal HTTP connector has received several fixes and improvements, but we don’t consider it ready for heavy productions yet. We will keep improving its stability and scalability in the future 2.1.x revisions.

Testing 2.2 branch

The first major change is that the minimum requirement are now Java SE/EE 6 (including Servlet 3.0) . As a result, we were able to upgrade our Jetty extension to use version 8.1 of Jetty.

We no longer support Java 5 which has been the case since Restlet Framework version 1.0. If you still need to support Java 5 due to other requirements, we encourage you to keep using Restlet Framework 2.1.

java-6

Today, modern web API rely on OAuth 2.0 to secure access, providing revokable and delegable authorization. It is key for the Restlet Framework to fully support this standard on both the client and server sides.

With this first 2.2 milestone, the OAuth 2.0 extension has been upgraded to OAuth 2.0 draft 30 level. We still have a lot of work ahead to both fully support the final 2.0 version of the specification (RFC 6749), both on client and server side, and to update the documentation (Javadocs and user guide).

oauth2.0

As this point, this extension is still considered experimental and we are looking for additional testers and contributors.

In addition, here are additional changes available:

  • HTTP PATCH method (RFC 5789) is now supported by default via Method.PATCH constant and @Patch annotation
  • JAX-RS extension has been enhanced to add client-side support based on JAX-RS annotations
  • Jackson extension has added support for the JSON binary (Smile), XML, YAML and CSV formats
  • OSGi extension has an OBAP pseudo-protocol (OSGi Bundle Access Protocol) client connector to allow access to resources from other OSGi bundles.
    • URI scheme: “obap://{bundleSymbolicName}/{pathToResource}”

Recent contributors

  • Andy Dennie
  • Brian Sletten
  • Dennis Mitchell
  • Emmanuel Liossis
  • Emanuele Ziglioli
  • Florian Bucklers
  • Grzegorz Godlewski
  • Jeff Plourde
  • Laurent Rustuel
  • Martin Grohmann
  • Nicolas Rinaudo
  • Shaun Elliott
  • Shotaro Uchida
  • Tim Peierls
  • Wei Wei Wang

Thanks to all others who helped us in various ways.

Additional resources

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

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

Restlet Framework 2.1.0 released! September 27, 2012

Posted by Jerome Louvel in Restlet Releases.
7 comments

After two years of development, we are proud to release version 2.1.0 of the Restlet Framework, in sync with the publishing of the ‘Restlet in Action’ book !!

What’s new?

Let’s step back and review the major enhancements introduced since version 2.0. For complete details, you can consult the related user guide page.

Restlet API

  • Support for more asynchronous representations has been added to faciliate interaction with streaming APIs such as CouchDB or Twitter
  • The annotations syntax has been enhanced to allow query parameters or alternate variants matching
  • Many syntactic sugar has been added such as getAttribute(name), getQueryValue(name), getMatrixValue(name) methods and equivalent setters on Resource subclasses
  • Improved ClientResource with a buffering option (useful for GAE which lacks chunked encoding support), redirection loops prevention and URI template support
  • New EncoderService added to automatically compress entities sent on both the client and the server side
  • New ConnegService providing a way to control the content negotiation behavior at the application level

Engine

  • Brand new internal connectors for HTTP added based on non-blocking NIO with limited thread usage
    • This is ideal for development phase and once fully stabilized should become an alternative for production
  • Greatly improved logging system, based on JULI, with programmatic control of the log level and the message formatters

Extensions

  • Updated Crypto extension with support for AWS authentication schemes, both client and server side
  • Added EMF extension supporting automatic representation serialization to XMI, XML and HTML
  • Updated GAE extension to add special authenticator (only GAE edition)
  • Added HTML extension supporting multipart forms on the client-side (can be combined with the FileUpload extension)
  • Added OAuth extension support version 2.0 (draft 10). More recent drafts are supported in version 2.2
  • Added SDC extension supporting Google Secure Data Connector protocol on the client-side (facilitate migration between GAE and other PaaS)
  • Added SIP extension providing both client and server connector for VoIP, based on the internal HTTP connector
  • Added SSL extension providing internal HTTPS client and server connectors
  • Various dependencies were updated such as FreeMarker 2.3.11, Jetty 7.6.5, Jackson 1.9.8 or XStream 1.4.1

Editions

  • Support for GWT from version 2.2 to 2.5 was added
  • Added edition for OSGi environments including dynamically generated bundle manifests, and removing the presence of activator class in other editions

Revamped community support

  • Migrated from Tigris.org to GitHub regarding the source code and the issue tracker has been completed, leading to more contributions
  • Added StackOverflow as the preferred source of user Q&A
  • Maven repository is now refreshed daily
  • Apache 2.0 license option was added
  • Twitter accounts were added:
    • @restlet_org for tweets related to Restlet open source project
    • @apispark for APISpark, the PaaS edition of Restlet Framework
    • @jlouvel for tweets from Restlet Framework’s creator

Major contributors

We don’t have the space to thank all direct contributors here, but you can find their names in the changes log below or in previous blog posts. Thank you all, your contributions made a big difference!

What’s next

Seven years after the project launch, the project is entering a new phase. REST is now the de facto standard and web APIs are popping up every day with 1 million web APIs expected in 2017.

At Restlet, we look forward to helping you and many others to be part of this growing API providers community. Of course you can always create your custom API using the Restlet Framework, but now we also offer a new solution.

APISpark is an all-in-one Platform as a Service that takes care of the creation, hosting, management and usage of web APIs, including both the visible API contract as well as its underlying implementation including data stores.

Support for third-party API wrappers and easy to use API templates are also built in the platform and made available through an API catalog that can be populated by API providers and searched by API users.

We also have a roadmap for version 2.2 of Restlet Framework which will add enhancements such as migration to Java 6 and Servlet 3.0, optimized size for GWT and Android editions by providing ligther JAR profiles, better Javadocs by merging the content of the user guide currently in the wiki, and so on.

The first milestone should come pretty soon and will mark the 2.1 branch as the new “stable” branch, fully ready for production. Until, then please test 2.1.0 in your environment and report any issue you find!

Best regards,

Jérôme Louvel – Founder and lead developer
ThierryBoileau – Community manager and core developer
Thierry Templier – Core developer

Additional resources

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

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

Restlet Framework 2.1 RC6 and 2.0.15 released August 23, 2012

Posted by Jerome Louvel in Restlet Releases, Uncategorized.
add a comment

Moving closer to the 2.1.0 launch, we have just released two new versions : 2.1 RC6 and 2.0.15. Here is a recap of the main changes and other related news…

Enhancements

Versions 2.1 RC6 contain important enhancements including:

  • Improved internal HTTP connector stability
    • less CPU usage by reducing looping (using changes notification)
    • less garbage collection thanks to limitation of Iterator creation (using indexes instead)
    • some issues remain, especially for HTTPS on Windows
  • The support for HTTPS has been significantly completed and fixed in all connectors for :
    • cipher suites restriction
    • SSL/TLS protocol version restriction
    • client certificate request & requirement setting
  • Updated version of Jetty to 7.6.5 and Jackson to 1.9.8
  • Completed the JsonRepresentation class in the GWT edition for easy handling of JSON arrays, Booleans, Null and String values
  • Content negotation now respects the strict mode setting in ConnegService by returning a 406 error status

Bug fixed

In addition, version 2.0.15 fixes 12 issues on the stable branch including:

  • Concurrency bug upon application start that was especially affecting GAE in thread safe mode.
  • Content range issues.
  • Security issue that could allow JavaScript injection inside entities of error reponses.
  • Case sensitivity issue on query parameters for JAX-RS extension.

“Restlet in Action” in production

The manuscript has been fully revised and copy edited, enhancing both the content and style compared to the recent MEAP versions significantly.

The book is now in the proof reading phase and we expect the print version by mid-September!

Development of version 2.2

We have also started to work on our next version, reaching the following goals:

  • Upgraded the code base and dependencies to Java SE 6
  • Upgraded Jetty to version 8.1 (based on Servlet 3.0)
  • Upgraded Jackson to version 2.0
  • Simplified the build process and Eclipse IDE support (no more PDE/OSGi requirement to import projects)

The latest 2.2 snapshots are available for download on our web site.

In addition, we continue our efforts to refresh our online presence and are now active on Stack Overflow in addition to our traditional mailing list hosted on Tigris.org.

See the Restlet web site for additional details and please join us there as it is a compelling way to ask questions that can concern several communities such as when using Restlet on GAE with Objectify.

In addition, we have been increasingly active on Twitter. To discuss Restlet, we encourage you to use the #restlet hash tag. You can also follow us via these accounts:

  • @restlet_org for tweets related to Restlet open source project
  • @apispark for the upcoming APISpark PaaS edition of Restlet Framework
  • @jlouvel for tweets from Restlet’s creator

Finally, we are still planning to migrate the mailing list to Google Groups in the future but don’t want to disrupt too many channels at the same time…

Recent contributors

  • Abdunnassar Usman
  • Andreas Schnabl
  • Andrew Dennie
  • Bjorn Roche
  • Christian Bauer
  • Christophe Gueret
  • Danny Leshem
  • David Fuchs
  • Enoch Stephen
  • James Moger
  • Jean Duteau
  • Jim Trainor
  • Jim Zuber
  • Lukas Niemeier
  • Mark Kharitonov
  • Peter Ansell
  • Rob Heittman
  • Tim Peierls
  • Yan Zhou
  • Yunwu Zhu

Thanks to all others who helped us in various ways.

Additional resources

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

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

Restlet Framework 2.1 RC5 and 2.0.14 released May 23, 2012

Posted by Jerome Louvel in Build, Restlet Releases.
add a comment

Since the last blog post related to releases in February, we have pushed a couple of new versions, including 2.1 RC5 and 2.0.14 today. It’s time to recap a little about the changes they bring  and other important news…

Enhancements

Versions 2.1 RC4 and RC5 contain minor enhancements including:

  • Support for URI templates on the client-side
  • Improved internal HTTP connector (chunked encoding and SSL)
  • Added syntactic sugar on Resource, ClientResource and ServerResource
    • getAttribute(name), getQueryValue(name), getMatrixValue(name) and equivalent setters
    • accept(…) for easier content negotiation
    • setProxyChallengeRequest(..), setProxyChallengeResponse(…)
  • Added CertificateAuthenticator to SSL extension

Bug fixed

In addition, version 2.0.14 fixes 16 issues on the stable branch including:

  • Security issue in the XML extension related to XML entities
  • OutputRepresentation issue with binary data causing early end of file
  • User agent name detection for Firefox on Windows
  • Content negotiation, multiple cookies and interface introspection issues with JAX-RS extension

Also, versions 2.1 RC4 and RC5 contain 22 bug fixes.

“Restlet in Action” in pre-production

We have continued working hard on our book, benefiting from a great technical proofing work done by Tim Peierls and on the constant feed-back of readers in the book forum. The manuscript is now complete, with all chapters and appendices available in early access. We have also refined the first six chapters and led them into the pre-production stage.

We recently made significant enhancements to the security chapter (n°5) to add more complete and reusable sample code and to better connect it with surrounding chapters, listening to the feed-back of several readers. We still have a busy work schedule for the summer, but should be able to put our hands on the printed version around September or soon after!

Development of version 2.2

After migrating our code base to GitHub, we have done the same for our issues tracker, adding cross-references for existing issues. If you need to report bugs or enhancements requests, please only use GitHub from now on. We have also started using their wiki area as a replacement for our developers wiki currently using Daisy and will complete the migration of the next few months. Next steps are the migration of the mailing list to Google Groups and StackOverflow.

We have also complete the upgrade to Java 6 which will be the minimum requirement as Java 5 has been phased out, which allowed us to remove some dependencies and libraries. We have also clarified the build process, now relying solely on Ant to generate the editions and build them. Building from Eclipse is also simplified, not requiring PDE/OSGi anymore.

JavaScript editions

Finally, we have bootstrapped the development of two new JavaScript-based editions of the Restlet Framework, one for web browsers based solely on AJAX, and the other targeting Node.js. Of course, we are following the same semantics as the Restlet API for Java-based editions, but relying on code style and patterns specific to JavaScript development.

Currently, only the client-side of the API is available, including support for most common HTTP headers, and we will progressively complete the features scope, including the server-side aspects on Node.js. We are looking for alpha testers and contributors at this stage to help us bring RESTful web APIs and JavaScript together in a high-level and productive way.

Recent contributors

  • Alessandro Pacifici
  • Anca Luca
  • Andrei Pozolotin
  • Andy Dennie
  • Arjohn Kampman
  • Bjorn Roche
  • Bruno Harbulot
  • Fabio Mancinelli
  • Gabriel Pulido
  • Grzegorz Godlewski
  • Jean-Baptiste Dusseaut
  • John Logsdon
  • Laszlo Hordos
  • Marc Knaup
  • Martin Svensson
  • Michael Henderson
  • Nicholas Waltham
  • Shaun Elliott
  • Thomas Mortagne
  • Tim Peierls
  • Vincent Massol

Thanks to all others who helped us in various ways.

Additional resources

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

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

Restlet Framework 2.1 RC3 and 2.0.11 February 25, 2012

Posted by Jerome Louvel in Restlet Releases, Uncategorized.
2 comments

Since the last release related post in October, we have released 2.1 RC2, 2.0.11 and more recently 2.1 RC3. It’s time to recap a little about the changes they bring  and other important news…

Migration to GitHub

After thinking about it for a while, active voices in Restlet community such as Andrei Pozolotin, Bryan Hunt and Xavier Bourguignon, convinced us to move our code repository to the highly popular GitHub platform.

This wasn’t an easy change as we had to import our large SVN code base, including doing proper branch and tag mapping from one system to another, and updating our build process.

Next steps will be the migration of tickets to GitHub and of the mailing list to Google Groups and StackOverflow.

Like some explorers have already done, feel free to use the Pull Request feature and enter new tickets in GitHub, as well as to ask Restlet-tagged questions in StackOverflow moving forward.

By the time we release version 2.1.0, we will hopefully be running our open source project on a state-of-the-art infrastructure!

Apache License 2.0

In addition to the other licensing options you can already choose from, including LGPL 2.1/3.0, CDDL 1.0 and EPL 1.0, we have recently added a new popular option: the Apache License 2.0.

See Restlet legal page and the license.txt file in latest Restlet distributions. One nice consequence is that this will make the usage of Restlet in Apache Foundation projects easier.

This new option also confirms a deep commitment to our open source roots at a moment where we rename our company to Restlet (SAS) and are about to launch new products on top of the Restlet Framework as explained in this other blog post: The road ahead, from Noelios to Restlet.

Bug fixed

In addition, version 2.0.11 fixes 5 issues on the stable branch including:

  • MediaType.includes side effect
  • OData client performance
  • GWT support of HTTP BASIC authentication
  • Conversion issues with annotated interfaces

Also, version 2.1 RC 3 contains 7 bug fixes including:

  • JAX-RS introspection of parent classes
  • Made usage of raw HTTP credentials easier

Minor changes

In addition, version 2.1 RC 3 contain minor enhancements summarized below:

  • Added Restlet API syntaxic sugar
  • Added ByteArrayRepresentation
  • Updated Jettison to version 1.3
  • Updated XStream to version 1.4.1

 

Recent contributors

  • Alex Milowski
  • Arjohn Kampman
  • Bill Claypool
  • Bryan Hunt
  • Dejan Lozanovic
  • Jean-Baptiste Dusseaut
  • Jerome Idylle
  • John Logdson
  • Klaus-Peter Schlotter
  • Koen Maes
  • Kristoffer Gronowski
  • Nikhil Purushe
  • Shaun Elliott
  • Try Lam

Thanks to all others who helped us in various ways.

Additional resources

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

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

Restlet Framework 2.1 RC1 and 2.0.10 released October 7, 2011

Posted by Jerome Louvel in GAE, RDF, Restlet Releases, Security.
add a comment

Here is the first Release Candidate of 2.1 which freezes the features scope and the public Restlet API. It also marks the beginning of a stabilization and optimization phase.

In order to reach 2.1.0 early next year, we want to fix as many issues reported in our tracked as possible and welcome any help on this front, especially reproducible test cases and patches.

We will also complete the Restlet in Action book, which has already 10 chapters out of 11 written and most appendices ready as well. Manning should be sending a MEAP update emails very soon now, taking into account great feed-back from readers and technical reviewers.

In the coming weeks, we will also start working on version 2.2, but we will come back on this exciting topic in another blog post !

Bug fixed

First, the 2.0.10 version fixes 11 issues on the stable branch including:

  • HTTP DIGEST signature issues when targeting several URIs
  • Web form empty issue on the GAE edition
  • RDF writing issue with XML and n3 formats

Major changes

In addition, version 2.1 RC 1 contains several major enhancements and new features summarized below.

  • Added ChallengeScheme.HTTP_AWS_QUERY constant to Crypto extension with client-side support for Amazon Web Services special authentication scheme (using URI query parameters)
  • Better handling of special URI characters when encoding and decoding to workaround JDK’s URLEncoder/Decoder limitations
  • Added syntactic sugar to the RDF extension
  • Added ClientResource#addQueryParameter and addSegment methods
  • Added ClientInfo#certificates and cipherSuite properties
  • Added Authenticator#multiAuthenticating to better control optional authenticators and prevent several authentications if not necessary.
  • Updated all Apache libraries to recent versions
  • Updated Jackson to version 1.9.0
  • Updated FreeMarker to version 2.3.18 (security fix!)

 

Recent contributors

  • Alex Milowski
  • Arjohn Kampman
  • Avi FlaxBjorn Roche
  • Bryan Hunt
  • Cyril Lakech
  • George Calm
  • Henry Story
  • Matt Stromske
  • Raif S. Naffah
  • Sebastien Schneider
  • Steve Ferris
  • Warren Janssens

Thanks to all others who helped us in various ways for this milestone.

Additional resources

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

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

Maven repositories:
http://maven.restlet.org

Restlet Framework 2.1 M6 and 2.0.9 released August 20, 2011

Posted by Jerome Louvel in GWT, NIO, OData, Restlet Releases.
add a comment

We are still on track for the 2.1 RC1 release in September, but so many enhancements and bug fixes were added since 2.1 M5 that we thought it would be useful to many users to have this intermediary milestone.

Bug fixed

First, the 2.0.9 version fixes 10 issues on the stable branch including:

  • Inappropriate warning message about child contexts
  • IO flushing issue that could create troubles with writer based representations such as JsonRepresentation
  • Conversion of representations to instances of primitive type using the default converter
  • Handling of binary data in OData extension
  • Default converter took precedence over specialized converters when converting incoming representations
  • Lack of warning message when an unexpected error happen during the invocation of an asynchronous callback

Those fixes are of course also available in the new 2.1 release.

Major changes

In addition, version 2.1 Milestone 6 contains several major enhancements and new features summarized below.

  • Improved Restlet annotation value syntax to support alternate variants using ‘|’ and combination of several metadata for a single variant using ‘+’ separator. Also, all metadata are now supported, not just media types. In addition, support for URI query constraints was added to allow annotations such as @Get(“form:json?light”) or @Get(“?level=2″), working on both client and server side
  • Added org.restlet.ext.html extension supporting writing HTML forms in either URL encoded format or multipart form data, with the same FormDataSet class. Parsing of multipart form data isn’t supported yet.
  • Added CookieAuthenticator in the org.restlet.ext.crypto extension to provide customizable and secure authentication via cookies, in a way that is as compatible as possible with HTTP challenge based authentication
  • Added ConnegService providing a way to control the content negotiation behavior at the application level. It offers two modes: strict and flexible (default) but additional algorithms can be implemented.
  • Added org.restlet.ext.emf extension supporting the conversion between EMF generated beans and XML or XMI representations. It can also automatically write simple HTML representations for navigating your web API.
  • Added HTTPS server connector based on the internal non-blocking NIO connector. Co-developed with NetDev.
  • Many minor enhancement to the Restlet API for conveniency purpose such as a new Representation.append(Appendable) method.

API breaking change

When retrieving or updating the raw headers in the Request or Response attributes, the type should now be Series<Header> instead of Series<Parameter>

 

Recent contributors

  • Bryan Hunt
  • Cyril Lakech
  • David Bordoley
  • David Hamilton
  • Glenn Bruns
  • Jean-Pascal Boignard
  • Jeroen Goubert
  • John Logdson
  • Konstantin Pelykh
  • Martin Svensson
  • Nikhil Purushe
  • Ray Waldin
  • Remi Dewitte
  • Scott S. McCoy
  • Tim Peierls
  • Thomas Eskenazi

Thanks to all others who helped us in various ways for this milestone.

Additional resources

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

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

Maven repositories:
http://maven.restlet.org

Restlet Framework 2.1 M5 and 2.0.8 released June 21, 2011

Posted by Jerome Louvel in Restlet Releases.
Tags: , ,
add a comment

Today was an exciting day for Restlet. First Manning has published a new version of the “Restlet in Action” book in MEAP, including a new chapter covering cloud computing usage of the framework, leaving only two chapters to write (plus some refactoring based on reviews) in order to complete this effort. In addition, we have just released two new versions of the framework!

Bug fixed

First, the 2.0.8 version fixes a couple of issues on the stable branch including:

  • Annoying regression with JAXB due to improper TreeMap usage
  • Fixed regression introduced in 2.0.7 with WriterRepresentation, OutputRepresentation and subclasses when sending long entities (1024 and longer)
  • Fixed Range issue when handling large files
  • Fixed support for Content-Disposition header with HTTP server connectors

Those fixes are of course also available in the new 2.1 release.

Major changes

In addition, version 2.1 Milestone 5 contains several major enhancements and new features summarized below.

  • New “org.restlet.ext.oauth” extension added providing comprehensive support for OAuth 2.0 (draft 10) co-developped with Ericsson Labs. For additional details you can read the extension page in the user guide as well as the specifications page.
  • New “org.restlet.ext.openid” extension added providing initial support for OpenID 2.0 contributed by Ericsson Labs. For additional details you can read the extension page in the user guide as well as the specifications page.
  • Greatly stabilized the internal NIO based HTTP client and server connectors, now passing all our test cases. We are still fighting a couple of issues related to NIO reselection and HTTP pipelining and will complete HTTPS support for 2.1 RC1.
  • Moved all SSL logic within Restlet core into org.restlet.ext.ssl extension, adding a new dependency for some HTTP connectors.
  • Fixed compatbility issues with GWT 2.3.
  • Updated Jetty to version 7.4.2.

 

Recent contributors

  • Aaron Summers
  • John Logsdon
  • Julien Landuré
  • Kristoffer Gronowski
  • Martin Svensson
  • Tim Peierls
  • Tom Moore

Thanks to all others who helped us in various ways for this last milestone before 2.1 RC1.

Additional resources

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

Download links:

http://www.restlet.org/downloads/

Maven repositories:
http://maven.restlet.org

Restlet Framework 2.1 M4 and 2.0.7 released April 27, 2011

Posted by Jerome Louvel in GAE, Restlet Releases, SDC, Security.
add a comment

In order to adress several pressing issues, we are releasing those new versions one month after the previous release cycle. The good news is that we had time to add a couple of nice features to the 2.1 development branch!

Bug fixed

First, the 2.0.7 version fixes a couple of issues on the stable branch including:

  • Dormant threads in some IO operations due to excessive thread pool instantiation (via TaskService). Now a single temporary thread is used when an existing TaskService can’t be found.
  • Broken Amazon S3 authentication due to new AWS domain naming strategy
  • Cookies management interference when using the Apache HTTP client extension
  • Performance issue with JAXB serialization when used by the JAX-RS extension
  • Equality testing between Role instances wasn’t properly done (object identity testing)

Those fixes are of course also available in the new 2.1 release.

Major changes

In addition, version 2.1 Milestone 4 contains several major enhancements and new features summarized below.

  • The ClientResource#entityBuffering property now buffers non transient representations of unknown size. This change was necessary to fully prevent HTTP chunking when talking to a GAE backend (which forbids chunk encoding).
  • Refactoring of the SSL support to reduce the “org.restlet.jar” size by moving all SSL logic to the “org.restlet.ext.ssl” extension. Now other HTTP extensions including Jetty, Simple and Apache HTTP Client need to add this dependency. The SSL extension also includes an experimental HTTPS client that will be stabilized and completed with a HTTPS server in next milestone.
  • The simplified logging format (one line per log entry) used by default in the Java SE edition has now been disabled from the Java EE edition by default as it could interfer with logging behavior of some containers such as Tomcat
  • Throwing ResourceExceptions in ServerResource subclasses now properly preserves the given status code back to the client
  • The SDC protocol support added in 2.1 M3 via the “org.restlet.ext.sdc” extension is now available in the GAE edition via the “org.restlet.ext.net” extension, with the same syntax for better code portability between cloud platforms (Protocol.SDC and ChallengeScheme.SDC constants also added)
  • New “org.restlet.ext.gae” extension added to the GAE edition that supports authentication and enrolement based on the GAE users service
  • ClientResource now respects any change to the default client preferences when using dynamic proxies (via wrap() for example), such as change in preferred media types.

Recent contributors

  • Avi Flax
  • Bo Xing
  • Christoph Dietze
  • John Logsdon
  • Julien Landuré
  • Kristoffer Gronowski
  • Martin Svensson
  • Matt Kennedy
  • Michael Guiral
  • Rhett Sutphin
  • Tal Liron
  • Tim Peierls

Thanks to all others who helped us in various ways for this fourth milestone.

Additional resources

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

Download links:

http://www.restlet.org/downloads/

Maven repositories:
http://maven.restlet.org

Follow

Get every new post delivered to your Inbox.