1 / 43

Technology Update on GridSphere

Technology Update on GridSphere. Jason Novotny (jnovotny@ucsd.edu) Oliver Wehrens (wehrens@aei.mpg.de) Michael Russell (russell@man.poznan.pl). Agenda. Past, Present & Future GridSphere Features Technologies. Past, Present & Future. The GridSphere Portal.

ringo
Download Presentation

Technology Update on GridSphere

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Technology Update on GridSphere Jason Novotny (jnovotny@ucsd.edu) Oliver Wehrens (wehrens@aei.mpg.de) Michael Russell (russell@man.poznan.pl)

  2. Agenda • Past, Present & Future • GridSphere Features • Technologies

  3. Past, Present & Future

  4. The GridSphere Portal • Originally funded by the EU GridLab project spanning 3 years since 2002 • Overall goal to build the best open source standards compliant portal designed to meet the needs of the Grid community • Bringing together best of breed technologies from both web and grid world • Building a community of users and developers and continuing to add new exciting scenarios

  5. How it all started... • Think back to 2002… • Early Grid Portal projects: Grid Portal Development Kit, HotPage, Astrophysics Simulation Collaboratory • GPDK and HotPage received significant attention as early interfaces to the Grid • Introducing Web Portals and portlet concept • Jetspeed 1 early portal demonstrating power and concept of portlets • Commercial application vendors providing in-house portlet-like solutions • No real standards and landscape was quickly evolving….

  6. A few key milestones... • Spring 2002: Completed design document and analysis of existing portal / grid solutions • August 2002: Wrote the first line of code • December 2002: Functional portal prototype using Portlet API borrowed from IBM WebSphere API • 2003: GridSphere evolves into highly functional portal complete with core set of portlets, sophisticated service model and visual tag library • January 2004: JSR 168 Portlet API implementation • February 2004: GS appears in IBM developerWorks article • March 2004: GS passes Sun Technology Compatibility Kit • November 2004: OGCE is JSR 168 compliant and can be dropped into GridSphere portal demonstrating true interoperability! • December 2005: We are part of the Expert Group for the next Portlet specification (JSR 286)

  7. Community • 250+ subscribers to the mailinglist • Many Project around the world adopted it • HPC Europa, D-Grid, P-Grade, BIRN, Telescience, Australian Virtual Observatory, UK E-Science ... • Help from many countries • e.g. we got localization in chinese, arabic and japanese and code contributions for GT 4 • Lots of workshop/talks • UK E-Science workshops, APAC workshop Gold Coast, GGF Brussels/Seoul , Supercomputing, Portal workshops in Baton Rouge, Edinburgh and San Diego ... • Next workshops: July, Portals and Portlets 2006 Edinburgh UK, November GCE 2006 at Supercomputing Tampa USA

  8. Source Code • Website: http://www.gridsphere.org • Includes documentation, news, partners • Subversion: http://svn.gridsphere.org • All code is now in subversion, free access • Bugtracker: http://bugs.gridsphere.org • Jira bugtracking system • Mailinglists • https://www.gridlab.org/mailman/listinfo/gridsphere-dev • https://www.gridlab.org/mailman/listinfo/gridsphere-users

  9. Current Funding • Core developers now have their own teams • Jason Novotny leading the BIRN portal team at SDSU, USA • Michael Russell leading the Portal Efforts at PSNC in Poland (including HPC Europa, OMII) • Oliver Wehrens leading the development of portals within the german national D-Grid initiative, also member of the portal team at Center for Computation and Technology (CCT), Louisiana State University, USA

  10. Biomedical Information Research Network • Goal: Enable new understanding of neurological disease by integrating data across multiple scales from macroscopic brain function to its molecular and cellular underpinnings • Migrating from Perl to GridSphere • Protected content will be available w/ single sign on. • 160+ public pages • 600~ protected pages • Collaboration Work Space • User Information Management • Enhanced Project Management • Collaboration Tools • Using technnologies like GAMA, Myproxy, SRB

  11. Poznan Supercomputing and Networking Center • GGF Involvement • Co-founded European Grid Forum which later lead to GGF • Co-founded Grid Scheduling Architecture Research Group • Involved in Simple Application Grid API (SAGA) Working Group • Gridge Toolkit, includes... • GridSphere • Grid Resource Management System (GRMS) • Grid Authorization Service (GAS) • Current EU Projects • BeInGrid, HPC-Europa, InteliGrid, OMII-Europe, BREIN, QoSCosGrid...

  12. D-Grid • Many german research institutions participated in various Grid projects • National Grid initiative were started by many countries • In 2005 the german government funded an e-Science project covering • Grid computing • Knowledge management • e-Learning

  13. D-Grid (cont) • Project is funded in the first phase till 2008 • Several communities are part of the Grid Computing division • Astronomy • Climate • Engineering • Life Science • High Energy Physics • The ‘Integration project’ provides knowledge and help to the communities • GridSphere was choosen to be the portal platform for all these communities

  14. Features

  15. What does it look like?

  16. Easy to customize • In self defined Tabs a user can organize the portlets he wants to have • 1/2/3 column predefined layout is available • Administrator can add more flexible layouts

  17. ... and themable.

  18. GridSphere Features • Portlet API passed Sun TCK and is 100% JSR 168 compliant • Additional Portlet API implementation nearly fully compatible with IBM's WebSphere 4.2. • Support for the easy development and integration of new portlet applications • Higher-level model for building complex portlets using visual beans and the GridSphere User Interface (UI) tag library. • Flexible XML based portal presentation description can be easily modified to create customized portal layouts.

  19. GridSphere Features (II) • Built-in support for Role Based Access Control (RBAC) separating users into guests, users, admins and super users. • Sophisticated portlet service model that allows for creation and reusability of new business logic with support for persistence of data • Support for Spring Framework • Persistence of data provided using Hibernate for database support

  20. GridSphere Features (III) • Portlet Bridge support (Struts, JSF) • Profile personalization and Layout customization • Administration portlets for creation of users, groups, portlet management and portal layout customization • Localization support in the Portlet API implementation and portlets support French, English, German, Czech, Polish, Hungarian and Italian. And now Arabic, Chinese, Japanese as well • Open-source and 100% free! :-)

  21. GridSphere Portal Framework • The primary goal of the GridSphere Project is to develop a Grid portal framework that we call GridSphere Grid Portal. • GridSphere Portal Framework is a JSR-168 compliant portlet container that offers a set of core portlets that provide the base functionality we think is required for all Web portals. • It also provides a framework for developing and packaging portlets as well as additional libraries to make portlet development easier

  22. GridSphere Grid Portlets • The GridSphere Portal Framework is a portlet container which is designed to be web application independent. Indeed, one of the key advantages of the Portlet API is the reuse of web applications. • Thus, the GridSphere Portal Framework does not contain any support for using Grid technologies. • Instead, GridSphere’s Grid related functionality is contained in a web application we call Grid Portlets. • GridSphere Grid Portlets, together with the GridSphere Portal Framework, offers a generic Grid portal and can be used to develop application-specific Grid portal applications.

  23. Technologies

  24. Questionnaire • We did a questionnaire end of last year • Spring Framework support • Java Server Faces support • More complex examples, tutorials • Easier authentication • More portlets with GridSphere (Wiki, CMS, ... ) • Support for more (Grid) Middleware (Unicore, LSF, PBS, Condor...) • Support for more Application Servers (Weblogic, Websphere) • Struts, Tapestry support • IDE Support (Eclipse, IntelliJ IDEA) • We work and will work on the feature request, we are committed to make this the best grid portal toolkit

  25. What is AJAX? • Asynchronous Javascript and XML • (coined 2005) • Makes use of XMLHttpRequest object in modern browsers to fetch data w/o page refresh • Relies on Javascript/CSS/DOM

  26. Why use AJAX? • No need to refresh entire page in many situations-- saves time • Functionality like auto complete (Google Suggest) or form validation can be made much more responsive enhancing usability • DOM manipulation allows websites to offer more of a “desktop” environment “drag and drop”, progress bars, etc.

  27. GridSphere + AJAX • Current issues with portlet development • No standard to add external CSS • No standard to add external JavaScript • No standard for how to reference a portlet in the DOM • 2 main usage scenarios: • Portlet developers could themselves use AJAX to create more dynamic and responsive portlets • GridSphere could use AJAX to dynamically update portlet without refreshing entire portal page

  28. AJAX enabled portlets (1) • 1st use case (portlet developer uses AJAX) • GS provides proprietary mechanisms to include CSS and JS • Uses renderResponse.setProperty(…) method of JSR 168 Portlet API • CSS_HREF - sets an external CSS stylesheet to add to page header • JAVASCRIPT_SRC - sets external javascript libraries to be included • BODY_ONLOAD - allows javascript methods to be included as onload attribute to HTML body tag

  29. AJAX enabled portlets (2) • 2nd case (GS uses AJAX behind the scenes) • Using UI actionlink and actionsubmit tags, boolean attribute “useAjax” is provided • Add tag to JSP code e.g: • This results in action being triggered in portlet, and only markup for portlet is returned • XMLHttpRequest is used to return markup fragment and DOM handling inserts modified markup <ui:actionlink action=“myAction” useAjax=“true”> Hi there</ui:actionlink>

  30. New UI widgets • Javascript provides more interactive client side capabilities • Downside is that code can be nasty to debug and issues with browser versions remain • Solution: Wrap into UI tags! • Example components that use JS: • Slider • Progress bar • Color chooser • Tree menus • Calendar Rich editors • etc.

  31. Calendar Widget • Uses Simple Calendar Widget: http://www.garrett.nildram.co.uk/calendar/scw.htm • Tag usage example: • Date can be retrieved in portlet code: <ui:calendar beanId="myCal"/> CalendarBean myCal = event.getCalendarBean(“myCal”); String date = myCal.getDate(); Works in IE and Firefox, Safari coming soon!

  32. Text Editor widget • Provides rich text editor with standard features • Usage similar to CalendarTag: • Works in Firefox and IE 6+ <ui:texteditor beanId="myTE"/> TextEditorBean myCal = event.getTextEditorBean(“myTE”); String richtext = myTE.getValue();

  33. Portlet Tag • Portlets are normally added to layout descriptor • How can we add portlets to a legacy website? • May not want use GridSphere layout/look and feel • May want to just simply add a portlet to a website (non-portal) <portlet-tab label="helloportlet"> <title lang="en">Hello</title> <table-layout> <row-layout> <column-layout width="50%"> <portlet-frame> <portlet-class> jsrtutorial#ActionHelloPortlet </portlet-class> </portlet-frame> </column-layout>

  34. Portlet Tag (cont.) • Answer: The UI Portlet Tag! • Can be used in any legacy JSP page • Label used for linking, bookmarking • PortletId uses GS convention for portlet naming i.e. <webapp name>#<portlet name> <%@ taglib uri="/portletUI" prefix="ui" %> <%@ taglib uri="http://java.sun.com/portlet" prefix="portlet" %> <%@ taglib uri="/portletAPI" prefix="portletAPI" %> <portletAPI:init/> <ui:portlet label=”mylabel" portletId="demo#AnyPortlet"/>

  35. GridSphere 2.x • Final GridSphere 2.2 release will contain • Tracking statistics for clicks on portlets • Spanish locale • New widgets for UI tag lib, like TextEditorWidget and CalendarWidget • Certificate login for portal • Fixed some CSS bugs • AJAX support for rendering only selected layout components • Improved DB performance using EHcache library • Improved role/group management • Administrators can confirm user self generated accounts

  36. GridSphere 3.0 • Scheduled for release in Summer 2006 • License • API changes • Customization changes • JSR 286 • New portlets • Improved CSS Support • Improved documentation

  37. License • GridSphere Portal Framework and GridPortlets used to have the GridSphere Open License (GOL) • This was basically just the Globus License • Some people asked why we do not have a recognized license • We are switching to Apace 2.0 license with the next major release • Basically: You can use GridSphere for anything you want, you just have to include the license

  38. API changes • We will deprecate the old IBM Websphere portlet API • We encourage everybody to use JSR 168/286 portlet API • Refactoring of the namespace (org.gridlab.gridsphere to org.gridsphere) • This will cause a need to reimport the correct classes in the portlets (your IDE can do that) • Some changes in internal classes

  39. Customization • Easier customization of the portlet url • Better css support • More themes • More colors • More flexible • A Guide for customization

  40. JSR 286 • We are part of the Expert Group JSR 286 • The first public draft is expected in may (now) • The final specification is expected to be done in Jan 2007 • We will work as soon as possible to get GridSphere JSR 286 compliant • Early versions might be in SVN by the time the first public release is out (depending on the policy of the JCP)

  41. New portlets • We do not have any ‘extra’ portlet besides the core ones in GridSphere • This allows us to have a clear focus on the core framework • We might have an separate portlet package with additional portlets in the future • Those can contain a wiki or a notebook portlet • This is not decided yet and depends on user requirements

  42. Documentation • Will improve documentation • Writing on a guide with a full portlet coding example • Explanation of some questions we see on the mailinglists • Redo the Administrators and Users Guide • Work has been started on that already

  43. Open • We are always open to new suggestions • New features • Improvements • Code contribution • Bugreports ;-) • Ideas • Contact me Jason Novotny jnovotny@ucsd.edu

More Related