Hi all, There is a new snapshot of RC3 at: http://www.restlet.org/downloads/current.zip
It contains the following changes since RC2: [Bugs fixed] - Fixed bug with the uri parsing in the DirectoryResource class. The query part of the resource uri is removed before sending request to the file connector. - The content negotiation was throwing class cast exceptions when a resource was returning simple Variant instance via getVariants(). - Fixed potential NPE in HttpRequest due to autoboxing. Reported by Valdis Rigdon. - Fixed bug preventing the Jetty connector from returning error status representations. - Fixed bug in DomRepresentation when outputting an instance based on a XML representation. - Fixed bug in Jetty connector potentially trying to send a response twice. Reported by Diggory Briercliffe. [API changes] - Added ReferenceList.getWebRepresentation() method, using exsiting logic from Directory. - Deprecated Directory.getDirectoryVariants() method and added getIndexVariants() + getIndexRepresentation() method to follow recent refactoring in Resource. - ClientInfo.port and ServerInfo.port are now 'int' instead of 'Integer' to prevent autoboxing issues. - Added getStatus(Method, Variant) and hasSome() methods to Conditions. Logic moved from private Handler methods. - Added Guard.getSecret() method for easier customization of the authentication system. - Guard.reject() is now public to allow standalone usage, without filtering. - Moved Resource.identifier property to Variant class. - Variant and Representation don't derive from Resource anymore. - Replaced Handler & Resource couple by a more flexible Finder & Resource couple. Based on real implementation experience, it became clear that a Resource should have full access to the request and response object. As a side effect, the Finder class can now dynamically instantiate the target resources without needing a subclass. The Resource class now contains handle*() methods, with no parameters but with the same logic as the deprecated Handler.handle*(Resource,Request,Response) methods. - Added convenience attach() and attachDefault() methods on Router to add in a single call a Route to a Finder creating new instance of a given target Resource class. - Deprecated Result class not used anymore. - Deprecated WrapperResource class. - Added Context.attributes property as a way to share objects between all Restlets of an application. Automatically includes the parent application if any. - Added Filter.setNext() method taking a Resource class as parameter and automatically creating an associated Finder instance. - Added TransformRepresentation by refactoring private logic from Transformer. [Enhancements] - The content negotiation algorithm is now more flexible about languages. It will try to satisfy the client languages preferences, but will always return a representation if the media type is accepted, even if the language is not explicitely accepted. - Upgraded Jetty to 6.1.1. - Added a dual licensing for GPL (with a Classpath exception) in addition to CDDL. - The ServerServlet now allows easier customization of the creation of Application instances. Based on a patch from Valdis Rigdon. - Updated Spring framework to 2.0.2 - Added support for Maven POM generation. The distribution now contains a "lib/poms" directory. Suggested by Turadg Aleahmad, Lars Heuer, Mike Moran, Mitchell Stewart and Vincent Lari. Best regards, Jerome Louvel -- http://www.restlet.org