CO.CC:Free Domain

or browse in 35 languages:

Login Form






Lost Password?
No account yet? Register

Get latest news from us

VivoCiti.com - Monthly Newsletter
Please register to the site before you can sign for a list.
No account yet? Register

Subscribe to RSS through Email:

Enter your email address:



Home arrow Article & Tutorial
Rails to Java via REST PDF Print E-mail

Views : 1778    

Favoured : 123

Published in : Articles & Tutorials, JAVA


Tag it:
Delicious
Digg
RedDot
Spurl
Reddit
YahooMyWeb
Technorati
Stumble
Furl it!
Mister.Wong

Rails to Java via REST - By Brian Leonard

Brian Leonard has written "Rails to Java via REST," detailing how he used Netbeans to write a REST service for a JPA entity bean, and used it from a Rails application: 

Since I've been studying the Rails framework, I've had an interest in integration with Java. Yes, JRuby is one possible solution, but if you have some large Java system that you want to integrate with, it' unlikely that you're just going to get the jar files to access that system's APIs. More likely is that system will expose itself as a service, and the service type du jour is REST.

So, in this entry I'm going to expose an entity class as a RESTful web service and then create a Rails client for that entity.

Setting Things Up

  • Download and install NetBeans 6.0 M10. Grab the Full distribution so you can get the Java IDE, Ruby and GlassFish.
  • Download and install the SWDP to GlassFish. This is required to create the RESTful web service.

Creating the RESTful Web Service

Here we'll expose the manufacturer table as a RESTful web service.

Create the Manufacturer Entity Class

  • Start NetBeans 6.0 and create a new Web Application named Manufacturers.
  • Right-click the project and select Entity Classes from Database.
  • Select jdbc/sample as the Data Source and MANUFACTURER as the Table (your list of available tables will be different then mine, but you should have MANUFACTURER):

  • Click Next and set the package to model.
  • Click the Create Persistence Unit button and then Create on the Create Persistence Unit dialog:

  • Click Finish to generate the Manufacturer entity class.

Create the REST Web Service from the Entity Class

  1. Right-click the project and select REST Web Services from Entity Classes
  2. Select the Manufacturer Entity Class and click Next.
  3. Set the package to rest and click Finish.

Test the REST Services

  1. Right-click the project and choose Test REST Services.
  2. This will deploy the Manufacturers application to GlassFish and launch a Test REST Services tool:

This tool is very handy for working with the RESTful interface.

The Completed Project

Manufacturers.zip

Creating the Rails REST Client

If you know REST then you know that its operations are basically the HTTP methods: POST, GET, UPDATE and DELETE, which correspond nicely to SQL's Create, Read, Update and Delete. I will implement each one in turn.

GET the Manufacturers

Create the Project

Create a new Ruby on Rails Application named manufacturer_client.

Create a Model to Represent the Manufacturer

The Manufacturer entity contains a bunch of fields. For the purposes of this tutorial, we're only going to work with a handful of them: name, email and phone.

  1. Since we're not using ActiveRecord, we're not going to run the model generator. Instead, right-click the Models folder and select New > Ruby Class.
  2. Name the class Manufacturer.
  3. Add the following code:
Read more...

 


   
Quote this article in website
Favoured
Print
Send to friend
Related articles
Save this to del.icio.us

Users' Comments  RSS feed comment
 

Average user rating

   (0 vote)

 


Add your comment
Only registered users can comment an article. Please login or register.

No comment posted



mXcomment 1.0.4 © 2007-2008 - visualclinic.fr
License Creative Commons - Some rights reserved
  No Comments.

Discuss...
Next >

Subscribe To

 Subscribe in RSS

Follow me...

Add to Technorati Favorites

http%3A%2F%2Fvivociti.com
Advertisement
Advertisement

Recommended Book


Join MyiBook Network



CO.CC:Free Domain

Latest Post