RESTEasy 6.2.11.Final and 7.0.0.Alpha4 Releases

By James R. Perkins | November 11, 2024

Today we’d like to announce the release of RESTEasy 6.2.11.Final and RESTEasy 7.0.0.Alpha4.

Both the 7.0.0.Alpha4 and 6.2.11.Final releases have two bug fixes, some component upgrades and two new enhancements.

7.0.0.Alpha4

RESTEasy 7.0.0.Alpha4 is a Jakarta REST 4.0 implementation. We opted for one more Alpha release before a Beta to ensure we have all the changes and features we want into this release.

Bugs:

  • RESTEASY-3502 - The Jackson Provider should add the Jackson Jdk8Module and JavaTimeModule by default
  • RESTEASY-3554 - The RESTEasy Vert.x client may produce a null pointer

Enhancements:

  • RESTEASY-3539 - Add better options for registering ClientHttpEngine’s
  • RESTEASY-3542 - Allow the multipart provider to define where it writes buffered data

Full releases notes can be found at https://github.com/resteasy/resteasy/releases/tag/7.0.0.Alpha4.

6.2.11.Final

RESTEasy 6.2.11.Final is a Jakarta REST 3.1 implementation.

Bugs:

  • RESTEASY-3502 - The Jackson Provider should add the Jackson Jdk8Module and JavaTimeModule by default
  • RESTEASY-3554 - The RESTEasy Vert.x client may produce a null pointer

Enhancements:

  • RESTEASY-3539 - Add better options for registering ClientHttpEngine’s
  • RESTEASY-3542 - Allow the multipart provider to define where it writes buffered data

The RESTEASY-3539 enhancement that in most cases we would not included in a patch release. However, this will allow for better integration with external clients. We will potentially add some more options for clients in the future. Do note though that if you implement the new interface, it will not be compatible with older versions of RESTEasy.

Full releases notes can be found at https://github.com/resteasy/resteasy/releases/tag/6.2.11.Final.

New ClientHttpEngineFactory API

In RESTEASY-3539 we introduce a new org.jboss.resteasy.client.jaxrs.engine.ClientHttpEngineFactory interface and a org.jboss.resteasy.client.jaxrs.api.ClientBuilderConfiguration interface. These can be used to create new ClientHttpEngine’s with a backing HTTP client if your choice. You simply need to implement the org.jboss.resteasy.client.jaxrs.engine.ClientHttpEngineFactory interface and include it as a service in your library or deployment and ensure it’s on the class path.

With this new interface, to use the RESTEasy Jetty Client or RESTEasy Vert.x Client you now simply need to place those libraries on the class path. You no longer need to register the ClientHttpEngine on your client builder.

Also note that the RESTEasy Jetty Client in the org.jboss.resteasy:resteasy-jetty-client dependency has been deprecated. However, the project was moved to an independent project. The migration is simple, use the new dev.resteasy.jetty:resteasy-jetty-client dependency and change the package names from org.jboss.resteasy.client.jaxrs.engines.jetty to dev.resteasy.jetty.client.engine. If you are not required to create a custom RESTEasy Jetty Client, then you can simply add it to your class path once implemented, after a component upgrade.

New dev.resteasy.entity.tmpdir Configuration Option

This is a simple option that allows you control where temporary entity files are created. These files are created for entities which exceed the maximum memory threshold. Please note the directory must exist prior to using this setting.

Finally

As always, feedback is welcome. Stay safe, and, depending on where you are, stay warm or be cool.

         

YourKit
YourKit supports open source projects with innovative and intelligent tools for monitoring and profiling Java and .NET applications. YourKit is the creator of YourKit Java Profiler, YourKit .NET Profiler, and YourKit YouMonitor