-
User guide
- Part 1 - Introduction
- Part 2 - Core Restlet
- Part 3 - Restlet Editions
- Part 4 - Restlet Extensions
- Appendices
- Tutorials
- Javadocs
- Change Log
What's new in version 2.5
Introduction
In the next sections, you will get a synthesis of the major changes done to the Restlet Framework in version 2.5.
Main changes
- Maven native
- distribution exclusively from Maven Central
- build with standard Maven replaces multi-editions Ant build
- Upgrades
- upgraded dependencies
- Apache Fileupload 1.5
- Apache FreeMarker 2.3
- Apache HTTP Client 4.5
- Apache Velocity 2.4
- Eclipse Jetty 9.4
- Jackson 2.17
- GAE 1.9
- Gson 2.10
- Guice 5.0
- GWT 2.11
- JAXB 2.4
- Servlet 3.1
- SLF4J 2.0
- Spring 5.3
- Thymeleaf 3.0
- upgraded dependencies
- Removals
- removed extensions deprecated in version 2.4: EMF, JavaMail, JAX-RS, JibX, Lucene, NIO, OAuth, OpenID, Platform, RAML, Simple, WADL
- removed native Restlet XML configuration feature. Please use Spring for an alternative approach if needed.
- Security
- Spring Framework before 6.0.0 suffers from a potential remote code execution (RCE) issue if used for Java deserialization of untrusted data. Depending on how the library is implemented within a product, this issue may or not occur, and authentication may be required. Restlet Framework isn’t able to upgrade to Spring Framewortk version 6.0 due to its requirement to use Java 8. If you are running Java 17+, please override the Spring dependency in your POM to version 6.0+
- Misc
- deprecated (Apache) HTTP Client, (Apache) FileUpload, GAE, HTML, OSGi and RDF extensions for removal in next major release.
- deprecated SDC, SIP protocol and challenge scheme
- deprecated NIO flavor of Restlet API for removal in next major release, with plan to use virtual threads instead to achieve additional scalability and reactive behavior.
- renamed extension Inject into Guice as it isn’t truly generic.
- updated the links in all Javadocs file for accuracy.
Migration guide from version 2.4 to 2.5
This section intends to explain the main differences between the Restlet 2.4 and 2.5 releases and to help you migrate your existing applications. Both releases are meant to be compatible at the API level, so you should at most observe deprecate features while upgrading.
Note that if you intend to migrate directly from 1.1 to 2.5, you should really consider migrating first from 1.1 to 2.0. For migration instructions between 1.1 and 2.0, you can check this page.
Replace all JAR files
Restlet JARs and dependencies, declaring Maven dependencies as indicated here.
Deprecated API features
The next step is to look at each deprecated feature and look in the Javadocs at the preferred alternative in version 2.5.