Hi all, For those eager to test the latest changes in trunk I've uploaded a new snapshot at: http://www.restlet.org/downloads/1.1/current.zip
We hope to release a 1.1 M1 at the end of the month. The changes log is inline below. Thanks for your feed-back. Best regards, Jerome ------------ [Bugs fixed] - Overridden the StringRepresentation#setCharacterSet method, in order to refresh the size of the representation. Reported by Calvin Cheng. - Fixed issue in the selection of connectors. The last connector in the classpath for a given protocol was selected instead of the first one, leading to counter-intuitive behavior when multiple connectors were present in the classpath. - Fixed bug in DomRepresentation causing the loss of both public and system DocTypes. Reported by Lee Saferite. [Enhancements] - Added a getApplication() method to Context and Resource classes. - Added a new Grizzly based HTTP server connector (full NIO). Optmizations and support contributed by Jean-François Arcand. - Upgraded Apache MINA to version 1.1.0. - There are now default internal HTTP client and server connectors exposed in the NRE core. If no other HTTP connectors are found in the classpath, those connectors will be used. They should perform reasonably under normal workloads but won't be as scalable as the NIO based connectors such as Grizzly and MINA based ones. You don't have anything to do to configure them, just put the com.noelios.restlet.jar in your classpath along with the Restlet API's JAR. Note that they don't support HTTPS and persistent connections. - All HTTPS server connectors (Grizzly, Jetty and Simple) now have two configuration parameters to indicates whether a client authentication is wanted or required. Suggested by Toby Thain and Chuck Hinson. - A request attribute "org.restlet.https.clientCertificates" containing the list of SSL session certificates (if available and accessible) is now available. Currently, only the Simple connector is capable or setting it. Suggested by Toby Thain. - Simple connector now initialize a trust manager. - Added abstract CharacterRepresentation for representations based on character streams. - Added ReaderRepresentation for representations based on characters Readers. - Added WriterRepresentation for representations based on characters Writers. - Added ByteUtils.toString(Reader) method and refactored ByteUtils.toString(InputStream) to reuse it. - Added ByteUtils.getReader(InputStream, CharacterSet) method. - Added getReader() and a write(Writer) methods on Representation class. - Exposed the "file" property on the FileRepresentation class. - Added two new FreeMarker's TemplateRepresentation constructor to allow more ways to provide the template (via a representation or directly as a FreeMarker Template object). - Added W3C XML Schema and Relax NG media types. - Added validate() methods on XmlRepresentation to validate an XML representation against a given schema. - Added a getSource() method on XmlRepresentation that results a JAXP Source instance. - Added JAXB extension based on a contribution by Overstock.com (via Sean Landis). - Added JAXB 2.0 and StAX 1.0 libraries. - Added a Template.getVariableNames() method. Suggested by Stian Soiland. - Added new Dimension.AUTHORIZATION enum entry. Suggested by Stian Soiland. - The ServletConverter now also copy the Servlet's request attributes into the Restlet attributes map. Suggested by Leigh Klotz. - Added new media types for RSS and WADL. Contributed by Avi Flax. - Added Atom, Relax NG, RSS, RTF, WADL and XSD in the common extensions of MetadataService. Contributed by Avi Flax. - Simplified the management of MediaType constants. Contributed by Stian Soiland. - Added a Representation.release() to have an uniform way to release a representation without forcing a read for example or manually closing the socket, the channel, the file, etc. - Added a Message.release() method to have an easy way to release the message's entity. Suggested by Stian Soiland. - Application is now concrete and has a setRoot() method. - Added Component.setDefaultHost() method. - Moved the "expirationDate", "modificationDate", "tag", "size" properties from Variant to Representation. The old properties are only deprecated for now but will be removed in a later version. - Added SpringApplication, SpringComponent, SpringHost, SpringRouter, SpringServer to the Spring extension to facilitate the wiring by Spring IoC. - The Resource class now accepts POST requests without any entity, or with an empty entity. Suggested by Sean Landis and Stian Soiland. - Added setters and getters for all the properties of all the classes in the API, including the collection properties. Clarified the Javadocs for the default collection creations. This will greatly facilitate the usage of the API in IoC containers like Spring. - Renamed "URIResolver" property to "uriResolver" in TransformRepresentation. - Renamed "*Attribute" properties to "*Parameter" in TunnelService. - If Resource.getRepresentation(Variant) returns 'null', the Resource.handleGet() method now returns a NOT_FOUND (404) status. Suggested by John D. Mitchell. [Misc] - Removed AsyncWeb connector, to be replaced by a custom MINA based one. - Removed Jetty 5 connector from the code base. Jetty 6 connector is stable enough now. - Added Response.locationRef property as a replacement for the Response.redirectRef property that is now deprecated. Suggested by Michael Vogel and Avi Flax. - Updated projects to Eclipse 3.3. Minor adjustments required.

