Cloud Zone is brought to you in partnership with:

At present I am a Software Engineer at WSO2.I was an undergraduate in University of Moratuwa Sri Lanka and a Young Innovator alumnus at International Communication Union (UN specialized agency).I was a Google Summer of code student for 2010 and 2011 and elected as an Apache Committer for Apache Roller.My key interests are Distributed Systems and SOA related technologies. Shelan is a DZone MVB and is not an employee of DZone and has posted 8 posts at DZone. You can read more from them at their website. View Full User Profile

How to Create a Data Service from Google Spread Sheet

07.15.2012
| 2115 views |
  • submit to reddit

Introduction


Google Spread sheets are popular tool and used in businesses heavily. Imagine a usecase where you need to collect data from various people and then use that data in your applications. Most of the time 5 minute work would be to create a Google Spread sheet and design a form to share among the people to collect the data. Once you have the collected data you may need to use them in your applications. WSO2 Data Services provide you a very convenient way to expose those data as a data service.

Requirements.


1) WSO2 Data Service Server 2.6.3
2) Online Google Spread sheet

Steps.
Starting the server.


Extract Data Services Server and lets consider root folder as <DSS_HOME>.
navigate to <DSS_HOME>/bin folder and in linux run wso2server.sh (If you are in windows use wso2server.bat)
Login to server using browser (default URL : https://localhost:9443)

Creating the Data Service.


Click on add → Data Service → create. ( you will get the following panel to add a name)




  • Create the data source from Google Spread sheet.


 (If you do not have your own one lets use the following online spreadsheet i have created.)
DataSource id gspreadTest
DataSoure TypeGoogle Spread Sheet
Google Spreadsheet URLhttps://docs.google.com/spreadsheet/ccc?key=0AmhfrCQvF530dEFzUlZaUDlsdUM1STJXbVdMRnJKM0E
usernamewso2dss
passwordwso2dss@2012




  • After completing click on Test Connection to verify the data source you have created. If it is successful you should get the following success dialog.


  • Create Query




For the query you need to define following parameters.

ParametervalueDescription
Query IDgetAllExpensesAn unique id to identify the query
Data SourcegspredTestData source we created in previous step
Worksheet no1identification no of the excel working sheet. (from sheet1, sheet2... etc.)
Start Reading from2From which row you are starting reading
Rows to read-1if it is (-1) it will read all the rows. Otherwise define the no of rows need to be read.
Headers availabletrueif yes. it will identify column headers for output mapping. Otherwise you need to define column number.


  • Create output mappings to columns of Google Spread sheet.

click on “Add new output mapping” and fill the for all the columns in the spreadsheet as we are going to extract all of them through this data service.

  • Add Grouped By element : Expenses and Row name : Expense(In the result it will appear by those given names.)
<Expenses xmlns="http://ws.wso2.org/dataservice">
     <Expense>
       <Amount>1000</Amount>
       <Name>Shelan</Name>
       <Type>Transport</Type>
       <TimeStamp>3/13/2012 11:45:09</TimeStamp>
   </Expense>
</Expenses>




  • After adding all of them in the “main Configuration” you can view the added output mappings.


  • Create a operation to Call the query.



  • Then save and click → finish to deploy the data service.
  • Go to Service Management ( Click → List on left panel) and refresh after few seconds to view your deployed service.
  • Click on try it to test you service.

 

 

 

Published at DZone with permission of Shelan Perera, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)