Developing Grid User Interface Components Portlets, gadgets, etc.

Slides:



Advertisements
Similar presentations
GPE4UNICORE Grid Programming Environment for UNICORE
Advertisements

Open Grid Computing Environments Marlon Pierce (IU) & Gopi Kandaswamy (RENCI)
© 2006 by Raghu Srinivasan; made available under the EPL v1.0 | Presenter Raghu Srinivasan Project Lead Oracle Inc. The JSF Tools Project –
May 13th, Lucek Consulting Basic Java Servlet/JSP Web Development David Lucek Lucek Consulting
Samsung Smart TV is a web-based application running on an application engine installed on digital TVs connected to the Internet.
Enhancing a Grid Portlet Using JavaScript Phil Chung Komla Etse John Nipp.
Using the Collaborative Tools in NEESgrid Charles Severance University of Michigan.
Developing in CAS. Why? As distributed you edit CAS 3 with Eclipse and build with Maven 2 – Best Practice for Release Engineering – Difficult edit-debug.
Apache Struts Technology
A Blackboard Building Block™ Crash Course for Web Developers
Building and Testing OGCE Software on the NMI Build and Test Facility Marlon Pierce Indiana University.
Wrapping Scientific Applications as Web Services Gopi Kandaswamy (RENCI) Marlon Pierce (IU)
Building Grid Portlets with GTLAB Mehmet A. Nacar and Marlon E. Pierce Community Grids Lab Indiana University.
Test Automation Framework Ashesh Jain 2007EE50403 Manager Amit Maheshwari.
OGCE Overview: Portals, Services, Workflows, Gadgets, and Tags Marlon Pierce (IU), Suresh Marru (IU), Gregor von Laszewski (RIT), Mary Thomas (SDSU), Nancy.
Building QuakeSim portlets with GTLAB Mehmet A. Nacar 1, Marlon E. Pierce 1, Andrea Donnellan 2, and Geoffrey C. Fox 1 1 Community Grids Lab, Indiana University.
Building Science Gateways Marlon Pierce Community Grids Laboratory Indiana University.
Open Grid Computing Environments Marlon Pierce, Suresh Marru, Gregor von Laszewski, Mary Thomas, Maytal Dahan, Gopi Kandaswamy, and Wenjun Wu.
Introduction to Liferay Copyright © Liferay, Inc. All Rights Reserved. No material may be reproduced electronically or in print without written.
1 Application Specific Module for P-GRADE Portal 2.7 Application Specific Module overview Akos Balasko MTA-SZTAKI LPDS
Creation of hybrid portlet application for file download using IBM Worklight and IBM Rational Application Developer v9 Gaurav Bhattacharjee Lakshmi Priya.
UNIT-V The MVC architecture and Struts Framework.
Spring Roo CS476 Aleksey Bukin Peter Lew. What is Roo? Productivity tool Allows for easy creation of Enterprise Java applications Runs alongside existing.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
Pittsburgh Java User Group– Dec Java PureFaces: A JSF Framework Extension.
MAVEN-BLUEMARTINI Yannick Robin. What is maven-bluemartini?  maven-bluemartini is Maven archetypes for Blue Martini projects  Open source project on.
OGCE Building and Testing on NMI Slides by: Rishi Verma.
Future Grid Future Grid User Portal Marlon Pierce Indiana University.
Installing and Building GTLAB Marlon Pierce Indiana Univeristy.
OGCE Overview: Services, Gadgets, and Tags Marlon Pierce, Suresh Marru, Gregor von Laszewski, Mary Thomas, Maytal Dahan, Gopi Kandaswamy, Rion Dooley,
Struts2 Plugin Development - Extending Struts2 Justin Yip.
23:48:11Service Oriented Cyberinfrastructure Lab, Grid Portals Fugang Wang April 29
Peter Laird. | 1 Building Dynamic Google Gadgets in Java Peter Laird Managing Architect WebLogic Portal BEA Systems.
1 Grid Portal for VN-Grid Cu Nguyen Phuong Ha. 2 Outline Some words about portals in principle Overview of OGCE GridPortlets.
NGS Portal.
COWS CEDA OGC Web Services Framework Stephen Pascoe.
QuakeSim Project: Portals and Web Services for Geo-Sciences Marlon Pierce Indiana University
Liang, Introduction to Java Programming, Seventh Edition, (c) 2009 Pearson Education, Inc. All rights reserved Chapter 41 JavaServer Face.
Designing Grid Tag Libraries and Grid Beans Mehmet Nacar, Marlon Pierce, Gordon Erlebacher, Geoffrey Fox GCE 2006 Tampa, FL.
OGCE Components for Enhancing UltraScan Job Management. Suresh Marru,Raminder Singh, Marlon Pierce.
OGCE Overview: Services, Gadgets, and Tags Marlon Pierce, Suresh Marru, Gregor von Laszewski, Mary Thomas, Maytal Dahan, Gopi Kandaswamy, Rion Dooley,
The Open Grid Computing Environments Project Marlon Pierce Community Grids Laboratory Indiana University.
Dean Anderson Polk County, Oregon GIS in Action 2014 Modifying Open Source Software (A Case Study)
1 Service Creation, Advertisement and Discovery Including caCORE SDK and ISO21090 William Stephens Operations Manager caGrid Knowledge Center February.
Dr. David Roldán Martínez Universidad Politécnica de Valencia, Spain & Nuno Fernandes Universidade Fernando Pessoa, Portugal Site Stats, the power of event.
Building Grid Portals with OGCE: Big Red Portal and GTLAB Mehmet A. Nacar, Jong Youl Choi, Marlon Pierce, Geoffrey Fox Community Grids Lab Indiana University.
Open Grid Computing Environments Tutorial Marlon Pierce, Suresh Marru, Gopi Kandaswamy, Gregor von Laszewski, and Tom Scavo.
Convert generic gUSE Portal into a science gateway Akos Balasko.
Transition to SVN server: follow up P.Hristov 24/01/2008.
A Component Framework for Building Web Science Gateways and Portals Mehmet Nacar Indiana University Computer Science Department Advisor:
Introduction to Portals.
Application Specific Module Tutorial Zoltán Farkas, Ákos Balaskó 03/27/
Maven and Jelly James Strachan. Introduction Maven and Jelly are both Apache projects at Jakarta Ultimately both will be top.
Tutorial on Science Gateways, Roma, Riccardo Rotondo Web Application Development Introduction to application servers, web applications and portlets.
Shaowen Wang 1, 2, Yan Liu 1, 2, Nancy Wilkins-Diehr 3, Stuart Martin 4,5 1. CyberInfrastructure and Geospatial Information Laboratory (CIGI) Department.
Examples with Java Server Faces (covered topics)
ArcGIS for Server Security: Advanced
Open Grid Computing Environment Summary
OGCE Short Summary Marlon Pierce Community Grids Lab
Writing Grid Portlets.
Shaowen Wang1, 2, Yan Liu1, 2, Nancy Wilkins-Diehr3, Stuart Martin4,5
Unit 6-Chapter 2 Struts.
Open Grid Computing Environments
Building Science Gateways and Managing Workflows with the Open Grid Computing Environment Toolkit Marlon Pierce, Suresh Marru, Zhenhua Guo, Fugang Wang,
GTLAB: Grid Tag Libraries Supporting Workflows within Science Gateways
Standard Portlet Architecture Supports Reusable Components
The JSF Tools Project – WTP (internal) release review
OGCE Portal Software for Big Red and the TeraGrid
Open Grid Computing Environments
OGCE Architecture: Portlets and Services for Science Gateways
Presentation transcript:

Developing Grid User Interface Components Portlets, gadgets, etc.

Under the Hood: Building Components OGCE portlets use the Java COG Abstraction Layer to access Grid services. Provides a buffer over different Grid toolkits and versions. Provides ability to compose graph-based workflows. Tutorial in itself Portlets can be built with our Apache Velocity bridge. “Template” or “steal this code” approach. We have also developed Grid Tag Libraries and Beans (GTLAB) to simplify this process.

GTLAB Features Extends Java Server Faces. o Tag components wrap major COG Abstraction Layer features Allows you to do standalone development. Use JSF portlet bridge to convert into portlets  No new coding, just change, add config files and jars. Or forget about portlets and o Convert into Google Gadgets o Develop as a Facebook application o Etc. o Status: GTLAB is under active development, can be used to build simple things, but still has many loose ends. o You need to be technically adept to work with it now. o But you are welcome to give feedback or contribute.

Installing GTLAB You need to install the OGCE portal o GTLAB depends on many shared jars. Download the release code from or check out from SVN: o svn checkout Edit GTLAB/jsf_standalone/pom.xml o should point to your OGCE portal server. Edit GTLAB/jsf_standalone/src/main/resources/resources.properti es. Run “mvn clean install” in GTLAB/jsf_standalone/

Levels of Abstraction in GTLAB code You can use prepackaged gadgets/portlets. You can mix and match repeatable sections of tags via “include” statements. You can develop new applications using existing tag libraries. You can hack the code Note JSF is compatible with JSP, so you can mix and match. And you can embed JavaScript YUI, Scriptaculous user interface goodies. Google and Facebook APIs.

MyProxy Example <o:submit id="submit" value="Submit" binding="#{builder.body}" action="#{builder.junkAction}" > <o:myproxy id="mypr" hostname="#{resource.myproxyHostname}" lifetime="2" password="#{resource.password}" port="7512" username="#{resource.username}"/>

Show the Proxy Credential <h:dataTable value="#{myproxy.storedProxyList}" border="1" binding="#{myproxy.storedProxyTable}" var="proxyEntry" id="proxyTable"> <h:commandButton id="deleteProxy" value="Remove” actionListener="#{myproxy.deleteCredential}"/>

Executing Multiple Task <o:submit id="submit" value="Submit" binding="#{builder.body}" action="#{builder.junkAction}" > <o:multitask id="multi" persistent="true" taskname="#{resource.taskname}"> <o:jobsubmit id="js" myfaces="true" arguments="#{resource.arguments}" executable="#{resource.executable}" hostname="#{resource.hostname}" provider="#{resource.provider}" stdout="#{resource.stdout}"/> <o:filetransfer id="ft" myfaces="true" from="#{resource.from}" to="#{resource.to}" />

GTLAB ExampleDescription MyProxyExampleGet a credential and store in OGCE global proxy store. JobSubmitExamplesVarious examples showing how to submit a grid job and get output. Dashboard ExamplesRuns showq on Big Red, Cobalt, and Mercury and formats output. DirectoryBrowserDisplays and downloads files on a remote host via GridFTP MultipleTaskExampleShows how to couple file transfers, operations, and TaskMonitorExampleView task state and metadata. These will work as gadgets, portlets, or standalone applications

GTLAB Gadgets Code Base GTLAB Portlets Code Base Tomcat Web Server Tomcat Web Server + Portlet Container iGoogle Client Aggregator Compile and deploy into server Decorate with bridge and container jars, xml config files. GTLAB gadgets can also run as portlets with no code changes by using the JSF portlet bridge.

Tomcat + Portlets and Container Grid and Web Services (TeraGrid, OSG, etc) Grid and Web Services (TeraGrid, OSG, etc) Grid and Web Services (TeraGrid, OSG, etc) HTML/HTTP SOAP/HTTP Common science gateway architecture. Aggregation is in the portlet container. Users have limited selections of components.

Other Gadgets Providers Tomcat + GTLAB Gadgets Grid and Web Services (TeraGrid, OSG, etc) Other Gadgets Providers Social Network Services (Orkut, LinkedIn,etc) RSS Feed, Cloud, etc Services Gadget containers aggregate content from multiple providers. Content is aggregated on the client by the user. Nearly any web application can be a simple gadget (as Iframes)

Making GTLAB Gadgets into Portlets Do all development in jsf_standalone. When you are ready to convert: cd GTLAB/transition mvn clean process-resources cd GTLAB/portlets mvn clean install You will need to manually edit portlet.xml, group.xml, and layout.xml in GTLAB/portlet/src/main/webapp/WEB-INF/ That’s it.

Making GTLAB Google Gadgets A Gadget is a standalone application that is integrated into your personal iGoogle display. They can run on your Web server. You can use SSL/HTTPS Google Gadgets have two versions http: these use Google’s JavaScript APIs url: these wrap external applications with IFrames. Limitations: Not much real estate (but location, location, location) Cookies manage state on gadgets from the same server but we need a way to integrate multiple independent servers.

Click “Add stuff” and then “Add feed or gadget”. Type the URL of your gadget.

GTLAB Applications as Google Gadgets: MOAB dashboard, remote directory browser, and proxy management.

Various GTLAB applications deployed as portlets: Remote directory browsing, proxy management, and LoadLeveler queues.

Example Gadget Config File <ModulePrefs title="MyProxy Gadget Example" scrolling="true" height="500"/> <Content type="url" href=" Save this as MyProxy.xml and place in a Web accessible place.

Some Web 2.0 Resources See recent tutorials by Geoffrey Fox and me: entations/Web2.0Tutorial.ppt entations/Web2.0Tutorial.ppt entations/CTSTechFutures_May19-08.pptx entations/CTSTechFutures_May19-08.pptx Includes material on Google Gdata, Facebook API, Open Social, Microformats, etc. See also full examples at