Enterprise Integration Zone is brought to you in partnership with:

Mitch Pronschinske is a Senior Content Analyst at DZone. That means he writes and searches for the finest developer content in the land so that you don't have to. He often eats peanut butter and bananas, likes to make his own ringtones, enjoys card and board games, and is married to an underwear model. Mitch is a DZone Zone Leader and has posted 2573 posts at DZone. You can read more from them at their website. View Full User Profile

RESTEasy 2: Now Apache v2 Licensed!

07.20.2010
| 10852 views |
  • submit to reddit
An all new version of JBoss' RESTEasy is finally here eight months after the 1.2 release.  After several betas, the major release of RESTEasy 2.0 is bringing RESTful Java apps and web services into the present technology landscape.  You'll find new features such as Spring 3.0 support, CDI (Contexts and Dependency Injection JSR-299) support, and asynchronous Servlet 3.0 support.  

RESTEasy is a certified, fully-portable implementation of the JAX-RS specification.  It can run in any Servlet Container (now including 3.0), and it can also achieve tighter integration with the JBoss app server.  

While JAX-RS is a server-side spec, RESTEasy brings JAX-RS to the client-side through the RESTEasy JAX-RS Client Framework.  The client-side framework lets developers map outgoing HTTP requests to remote servers using interface proxies and JAX-RS annotations.

The highlights of RESTEasy 2.0 include:

  • CDI Support
  • Spring 3.0 Support
  • TCK 1.1 Compliance
  • Async Servlet 3.0 Support
  • A new Javascript API.  A javscript servlet scans JAX-RS deployments and generates Javascript code that can be downloaded that can be used as stubs.
  • Relicensed under ASL 2.0.  We switched to be compatible with HornetQ and Drools as we're developing REST interfaces for these guys.
  • Tons of bugfixes and performance improvements reported by the community over the past 8 months.

JBoss AS 6-Milestone 4 will include deeper integration with RESTEasy 2.0 which will facilitate automatic scanning, EJB injection, CDI injection, and more.  RESTEasy will align the JAX-RS with all of the new features Java EE 6.

Here are the other major features of RESTEasy (pre 2.0):

  • Portable to any app-server/Tomcat that runs on JDK 5 or higher
  • Embeddedable server implementation for JUnit testing
  • Client framework that leverages JAX-RS annotations so that you can write HTTP clients easily (JAX-RS only defines server bindings)
  • Client "Browser" cache. Supports HTTP 1.1 caching semantics including cache revalidation
  • Server in-memory cache. Local response cache. Automatically handles ETag generation and cache revalidation
  • Rich set of providers for: XML, JSON, YAML, Fastinfoset, Multipart, XOP, Atom, etc.
  • JAXB marshalling into XML, JSON, Jackson, Fastinfoset, and Atom as well as wrappers for maps, arrays, lists, and sets of JAXB Objects.
  • GZIP content-encoding. Automatic GZIP compression/decompression suppport in client and server frameworks
  • Asynchronous HTTP (Comet) abstractions for JBoss Web, Tomcat 6, and Servlet 3.0
  • Asynchronous Job Service.
  • Rich interceptor model.
  • EJB, Seam, Guice, Spring, and Spring MVC integration

Comments

Claus Ibsen replied on Wed, 2010/07/21 - 10:30am

Thanks for licensing under ASL. Makes it a project I need to check out. And possible integrate with Apache Camel.

Jim Moore replied on Fri, 2010/07/30 - 8:08am

Is there someplace that it can be downloaded with Ivy/Maven? I checked the standard Maven repo and the JBoss repo, and didn't see the 2.0 GA release there.

Rashmi Gm replied on Thu, 2011/03/17 - 6:40pm in response to: Claus Ibsen

Hi Claus, Is there ongoing work to integrate RestEasy with Apache Camel? Thanks, Rashmi

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.