toward an opensocial life science gateway l.
Skip this Video
Loading SlideShow in 5 Seconds..
Toward an OpenSocial Life Science Gateway PowerPoint Presentation
Download Presentation
Toward an OpenSocial Life Science Gateway

Loading in 2 Seconds...

play fullscreen
1 / 17

Toward an OpenSocial Life Science Gateway - PowerPoint PPT Presentation

  • Uploaded on

Toward an OpenSocial Life Science Gateway. Wenjun Wu, Michael E. Papka, Rick Stevens. Web 2.0 – Gadget and Social networking. Gadget Mini web application AJAX Social Networking Facebook MySpace Build virtual communities in a bottom-up manner Leverage science gateway portals

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
Download Presentation

Toward an OpenSocial Life Science Gateway

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
toward an opensocial life science gateway

Toward an OpenSocial Life Science Gateway

Wenjun Wu, Michael E. Papka, Rick Stevens

web 2 0 gadget and social networking
Web 2.0 – Gadget and Social networking
  • Gadget
    • Mini web application
    • AJAX
  • Social Networking
    • Facebook MySpace
    • Build virtual communities in a bottom-up manner
  • Leverage science gateway portals
    • Rich user interface
    • Collaboration: social networking
  • A standardized framework for building social applications
  • Provides Specification for both gadget and social-networking
    • Gadget JavaScript API: gadgets.*
    • OpenSocial JavaScript API: opensocial.*

<People, Relationship, Activity, Persistence>

  • Enabling web developers to write gadgets with social capability that can run in any OpenSocial compliant container

iGoogle, Orkut,MySpace, Hi5…

  • Apache Shindig
    • Open Source OpenSocial container
open life science gatway services
Open Life Science Gatway Services
  • A TeraGrid Science Gateway Project
  • Integrates a group of bio-informatics applications and data collections into a portal
    • Alignment - Blast and ClustalW
    • Protein domain – InterProScan
    • Protein Structure Prediction
  • Job History browsing
    • Web-Services
    • JSON-RPC
  • OLSGW Portlets
open life science gateway framework7
Open Life Science Gateway Framework
  • Generic RPC Services
    • both a generic SOAP-RPC service and JSON-service, unmarshall RPC requests from clients, and create the job objects along with job execution scripts
  • Application Service
    • responsible for parsing an application XML description, generating service stubs and formatting application specific web-pages and portlet codes.
  • Job Factory
    • builds a job execution script and constructs a job object in the persistence job storage
application service for clustalw
Application Service ( for clustalw )

<parameter iscommand="1" ishidden="1" type="String">









<parameter ismandatory="1" issimple="1" type="Sequence">





<code>$actions ne "-profile" and $actions ne "-sequences"</code>


<prompt>Sequences File (or Alignment File for Bootstrap and Tree actions) (-infile)</prompt>



<code> " -infile=$value"</code>


<code> " -infile=value"</code>





Serialized Command-Line


generic rpc services for clustalw
Generic RPC Services ( for clustalw )

function runClustalW(){

var params = new Object();

params.javaClass = 'java.util.Hashtable'; = {};['actions'] = '-align';['quicktree'] = 'fast';['outfile'] = 'OUTPUT';

var seqinput = document.getElementById("seqinput");['infile'] = seqinput.value;

// Hashtable params

result = jsonrpc.JobService.runJob(callback, "clustalw", params);


Generic RPC Service

String JobID runJob

(String application,


String> params);

JavaScript code segment for running clustalw jobs

building opensocial gadgets for olsgw
Building OpenSocial gadgets for OLSGW
  • URL gadgets
    • IFrame
    • Wrap any Html pages in OLSGW
    • Session Cookie
  • HTML gadgets
    • Gadget XML
    • HTML markups
    • JavaScript codes.

<?xml version="1.0" encoding="UTF-8"?>


<ModulePrefs title="Run ClustalW" scrolling="true" width="1000" height="600">

<Require feature="views"/>

<Require feature="dynamic-height"/>


<Content type="url" view="canvas" href=""></Content>


html gadgets
HTML gadgets
  • Advantage: utilize the rich features of OpenSocial JavaScript API
  • JSON-RPC service to run bio-applications
    • Allows the gadget JavaScript to communicate with remote services through a proxy in the gadget’s OpenSocial container

var params={};

params[] =;

params[] =;

params[] =;

var rpcdata = {}

params[]=;, response, params);

JavaScript code for sending a makeRequest to invoke JSON-RCP Service

gadgets authorization
Gadgets Authorization
  • OAuth
    • An open authorization delegation mechanism
    • Three Steps
      • The consumer obtains an unauthorized request token.
      • The user authorizes the request token.
      • The consumer exchanges the request token for an access token.
  • OAuth Entities in OLSGW
    • OAuth Consumer: makeRequest proxy in an OpenSocial container
    • OAuth Provider: the JSON-RPC service provider
    • OAUTH servlets and filter
oauth implementation for json rpc




OAuth Implementation for JSON-RPC

Request Token Servlet

Authorization Servlet

Access Token Servlet

OAuth Security Filter


Service Provider

message flow in oauth steps

Consumer Requests

Request Token



Provider Grants

Request Token


Callback URL



Access Token


POST (2)

Access Token

Message flow in OAuth steps

HTTP Request & Callback URL


Open Life Science Gateway Bio-gadgets (rendered in iGoogle)

Blast gadget run on both iGoogle and orkut

open life science gateway gadgets
Open Life Science Gateway gadgets

Job History gadget

ClustalW gadget

questions answers
Questions & Answers
  • Demo on Tuesday

12:00PM Argonne Booth

1:30PM Indiana Booth