Application Development - eWeek



JBoss Helps Developers RESTEasy Writing REST-based Java Web Services




Red Hat's JBoss division has released the 1.0 version of JBoss RESTEasy, a framework that enables developers to write Representational State Transfer-based Web services in Java. RESTEasy is a fully certified and portable implementation of the JAX-RS specification. JAX-RS is also known as Java Specification Request (JSR) 311 -- the Java API for RESTful Web Services.

Red Hat's JBoss division has released the 1.0 version of JBoss RESTEasy, a framework that enables developers to write Representational State Transfer-based -- also known as "RESTful" -- Web services in Java.

JBoss fellow Bill Burke has been championing the effort and crowed about the technology achieving a version 1.0 generally available release on Jan. 21. "I am pleased to announce the first GA release of JBoss RESTEasy," Burke said in a blog post on the technology.

RESTEasy is a fully certified and portable implementation of the JAX-RS specification. JAX-RS is also known as Java Specification Request (JSR) 311 -- the Java API for RESTful Web Services. JAX-RS is a new Java Community Process (JCP) specification that provides a Java API for RESTful Web Services over the HTTP protocol.

"REST is a set of architectural principles that defines why the World Wide Web has been so successful at scaling so massively and how you can apply those principles to modern distributed applications," Burke told eWEEK. "While not protocol-specific, when people talk about REST they usually are talking about using HTTP in a RESTful manner. I like to think of REST as the rebirth or rediscovery of HTTP. Distributed technologies like WS-*/SOAP [the web services stack and Simple Object Access Protocol] have used HTTP solely as a transport protocol when in reality it is a very rich protocol -- caching and content-negotiation are two examples."

Moreover, Burke argues that "Developers like REST because it generally is much simpler than putting together a SOAP stack. Most languages and platforms support HTTP while this is not so true with WS-*. Also, interoperability is always an issue between vendor stacks with SOAP. With REST you focus on what matters, the exchanged data format -- X M L, JSON, whatever -- and let HTTP do all the heavy lifting."

Meanwhile, RESTEasy can run in any Servlet container, but tighter integration with the JBoss Application Server is also available to make the user experience nicer in that environment, Burke said. While JAX-RS is only a server-side specification, RESTEasy has innovated to bring JAX-RS to the client through the RESTEasy JAX-RS Client Framework. This client-side framework allows you to map outgoing HTTP requests to remote servers using JAX-RS annotations and interface proxies, Burke said.

"From a Java perspective, you've always been able to write RESTful applications using a Servlet container," Burke said. "What RESTEasy does is make you more productive at writing RESTful applications through the new JAX-RS standard that will be part of Java EE [Enterprise Edition] 6."

Additional features of the RESTEasy technology include: a fully certified JAX-RS implementation; portability to Tomcat or any application server that runs on Java Development Kit (JDK) 5 or higher; it is an embeddable server implementation for JUnit testing; it has a rich set of providers for: XML, JSON, YAML, Fastinfoset, Atom, and more; it has Java Architecture for XML Binding (JAXB) marshalling into XML, JSON, Fastinfoset, and Atom as well as wrappers for arrays, lists, and sets of JAXB Objects; it features asynchronous HTTP (Comet) abstractions for JBoss Web, Tomcat 6, and Servlet 3.0; it has Enterprise JavaBeans (EJB), Spring, and Spring MVC integration; and it features a client framework that leverages JAX-RS annotations so that you can write HTTP clients easily (JAX-RS only defines server bindings).

Moreover, for his part, Burke said he sees REST overtaking SOAP. "From an adoption standpoint, I believe that REST has a high probability of overtaking SOAP/WS-* as a preferred way to integrate SOA [Service Oriented Architecture] applications," he said. "Once developers start realizing how difficult it is to get these WS-* stacks up and running, let alone, interoperating with one another, they'll see the light." 







 
 
>>> More Application Development Articles          >>> More By Darryl K. Taft
 

FEATURED SPONSOR MESSAGE

Start the New Year with business intelligence—it’s a smart move

Join us on February 1 for an encore rebroadcast at either 5 am or 12 noon EST and discover how business intelligence (BI) supports companies in uncertain business and economic climates. Get expert advice on how to create a strategy that fits your organization's needs and budget and see how quickly it can pay for itself.

Click Here

Brought to you by


eweek digital



Advertisement
 
APPLY FOR A FREE 
SUBSCRIPTION BELOW:

>Try digital eWEEK
>Renew today
>Subscription help
>More FREE Subscriptions
First Name:Last Name:
Title:Company:
Address:City:
State:Zip Code:
Email:
eWEEK Quick LInks