Now that JAX-RS 2.0 is in Public Draft and has stabilized a bit, API-wise, we finally released Resteasy 3.0 Beta 1. This release implements almost all of the features defined in the JAX-RS 2.0 Public Draft. Many of the key features in Resteasy 2.x have now been standardized in JAX-RS 2.0. There’s a new client API which is similar (actually better) than the current Resteasy 2.x client API. Interceptors have been added to the spec. You’ll find that they map very closely to Resteasy’s. I pushed really hard for this. Finally, there’s the async HTTP apis. Also very similar to Resteasy’s. All and all, if you’re using some of these features currently within Resteasy, you shouldn’t have much problems migrating to the JAX-RS 2.0 equivalent APIs. The only thing we’re missing is the client proxy support, but I couldn’t get other experts to agree it was a good idea to add.
This beta has a few JAX-RS 2.0 examples with the distribution. The Resteasy documentation regarding JAX-RS 2.0 isn’t where I want it yet, but we’ll get there as we get closer to a final release of 3.0. To learn some of the new features, it may be best to take a look at some of the features within Resteasy that take advantage of these APIs. I’ve linked them all below.
- Intro to JAX-RS 2.0 Article
- JAX-RS 2.0 Public Draft Specification
- Resteasy 3.0-beta-1 Download
- Resteasy 3.0-beta-1 Docs
- Resteasy 3.0 client cache implementation code (to see how filters interceptors work on client side)
- Doseta digital signature headers (good use case or interceptors)
- File suffix content negotiation implementation (server-side filter example)
- Other server-side examples (cache-control annotations, gzip encoding, role-based security)