BT

New Early adopter or innovator? InfoQ has been working on some new features for you. Learn more

RESTFul Bridge Between Java And .NET Released

| by Dilip Krishnan Follow 0 Followers on Sep 30, 2009. Estimated reading time: 2 minutes |

Noelios Technologies, the France-based consulting services firm, is shipping a new version of the Restlet open source project, a lightweight REST framework for Java, that includes the Restlet Extension for ADO.NET Data Services. The effort is a collaboration between Microsoft and Noelios Technologies and it makes it easier for Java developers to take advantage of ADO.NET Data Services.

ADO.net Data Services is a framework to enable creation of RESTFul services and clients that consume them. From MSDN,

The ADO.NET Data Services framework consists of a combination of patterns and libraries that enable the creation and consumption of data services for the web. The goal of the ADO.NET Data Services framework is to facilitate the creation of flexible data services that are naturally integrated with the web. As such, ADO.NET Data Services use URIs to point to pieces of data and simple, well-known formats to represent that data, such as JSON and ATOM (XML-based feed format).

Jean-Christophe Cimetiere, a Technical Evangelist at Microsoft wrote an article detailing the collaboration effort, in which he describes how the ADO.net Data Services, formerly known as “Project Astoria”, can be used to expose relational and non-relational data via RESTful services.

In order for the system to understand and leverage semantics over the data that it is surfacing, ADO.NET Data Services models the data exposed through the data service using a model called the Entity Data Model (EDM), an Entity-Relationship derivative. This organizes the data in the form of instances of "entity types", or "entities", and the associations between them.

For relational data, ADO.NET Data Services supports exposing an EDM model created using the ADO.NET Entity Framework.  For all other (ie. non relational) data sources or to use additional database access technologies (ex. LINQ to SQL) a mechanism is provided which enables any data source to be modeled as entities and associations (ie. described using an EDM schema) and exposed as a data service.

More information about ADO.NET Data Services can be found here.

From the Restlet website, Restlet is a framework is a framework that helps developing RESTful client and server applications. The Restlet framework consists of a Restlet API that provides the core set of contracts to register a Restlet implementation. These implementations could be open source projects or commercial products. According to Cimetriere,

The Restlet Extension for ADO.NET Data Services provides a high-level client API that extends the Restlet Framework’s core capability by providing access to remote data services that are hosted on ASP.NET servers or the Windows Azure cloud computing platform.

Java developers use the extension’s code generator to create Java classes that correspond to data entities exposed through ADO.NET Data Services. The Java application is then able to access the data via a simple method call. The runtime components in the Restlet engine and the extension take care of the communication between the Java client application and ADO.NET Data Services.

The overall architecture can be described via the following component diagram (source)

Reslet Extention for ADO.NET Data Services Architecture

Other java interoperability efforts lead by Microsoft include Apache Stonehenge (practical SOA/Web services interoperability across platforms), Azure .NET Services SDK for Java. More information about the Java-.net interoperability efforts can be found at www.interoperabilitybridges.com/projects/tag/Java.aspx

Rate this Article

Adoption Stage
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Tell us what you think

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread
Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Email me replies to any of my messages in this thread

Discuss

Login to InfoQ to interact with what matters most to you.


Recover your password...

Follow

Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.

Like

More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.

Notifications

Stay up-to-date

Set up your notifications and don't miss out on content that matters to you

BT