Showing posts with label JAX-RS. Show all posts
Showing posts with label JAX-RS. Show all posts

Sunday, July 11, 2010

Mid evaluations with the cute hexapus!

Mid evaluation is on the way today evening, while we have done the initial design of ReSTful presentation layer, and towards the completion of the SOAP based layer. Web Application Description Language (WADL), which is said to be the ReST equivalent to WSDL of SOAP, paired with JAX-RS supported by CXF will serve us in this. WADL2Java tool for the stub generation is worth mentioning here. Service Oriented Architecture (SOA) and Resource Oriented Architecture (ROA) all sound good. Again feeling the need for a wsdl2wadl tool [1] (and a wadl2wsdl ;)).

WADL is becoming the standard (if not already) for REST as WSDL for SOAP, though REST with WSDL2.0 too is possible. "CXF JAX-RS now supports the auto-generation of WADL for JAX-RS endpoints. [2]" I was initially planning to write WADL on my own, by referring to the respective WSDL (and then use wadl2java for the stub generation). Finally felt auto-generation from JAX-RS is a smarter option, where we start from Java to WADL and after fine tuning the WADL that is auto-generated from the JAX-RS endpoints, going back to the java code using wadl2java (as thought initially).

[1] "Modelling Web-Oriented Architectures", by G.Thies and G.Vossen
[4] SOAPUI - Working with REST Services. 
[5] #rest on irc.freenode.net
[6] wadl2java  
[7] MYEclipse - Developing REST Web Services Tutorial
[8] Chapter 13. How requests (workflows) are executed
[9] OGSA-DAI 4.0 Axis Documentation
[10] The Client Toolkit Tutorial
[11] JAX-RS (JSR-311)

 * Hexapus refers to the logo of ogsa-dai.

Monday, March 22, 2010

[GSoC 2010] Alternative Presentation Layer for OGSA-DAI

Having the vision of sharing data resources to enable collaboration, Open Grid Services Architecture Data Access and Integration (OGSA-DAI) provides access, transformation, integration, and delivery of data. It supports Apache Axis 1.4 and Globus Toolkit (gt-4.2), available to download for both the two platforms.
 
Under Open Middleware Infrastructure Institute (OMII-UK), an alternative presentation layer using Apache CXF instead of the outdated Axis which is currently used, is discussed as a project for Google Summer of Codes 2010, which I found very interesting for this summer.  

Project Proposal

Project Mentor: Ally Hume

OGSA-DAI has a layered architecture consists of the data layer, business logic layer, presentation layer, and client layer, when considering the architecture in bottom-up. Presentation layer encapsulates the required functionalities to expose the data service resources using the web service interfaces. Presentation layer currently consists of two realization, where each of them have  a WSDL that describes the interface. 

Both the realizations are compliant with Web Services Resource Framework (WSRF), and communicate with the respective client stubs using SOAP over HTTP. Hence design and implementation of an alternative RESTful presentation layer using CXF JAX-RS (The Java API for RESTful Web Services) is also included in this project, as it will be lightweight and best for bespoke clients.

This seems an interesting initiative as the performance and the simplicity will be highly improved. I have seen reasonable comparison of Axis 2 and CXF [1], [2], though they must be outdated by this time.

[1] Technical Notes on OGSA-DAI
[2] Resource on writing a presentation layer
[3] OGSA-DAI Tutorial
[4] FAQ: OGSA-DAI WSI-specific (Based on Axis 1.4 web service stack)
[5] FAQ: OGSA-DAI WSRF-specific (Based on the globus toolkit)
[6] General FAQ
[7] Known Problems
[8] Binary Transfer Benchmarks 
[9] GSoC 2010 Announcement in OGSA-DAI blog
[10] Google Summer of Code 2010 site