Presentation is loading. Please wait.

Presentation is loading. Please wait.

Developing an Application-Specific Portal with P-GRADE Portal 2.9 Author: Ákos Balaskó, Date : 03-06-2010.

Similar presentations


Presentation on theme: "Developing an Application-Specific Portal with P-GRADE Portal 2.9 Author: Ákos Balaskó, Date : 03-06-2010."— Presentation transcript:

1 Developing an Application-Specific Portal with P-GRADE Portal 2.9 Author: Ákos Balaskó, Date : 03-06-2010

2 Content 1.Goal 1Assumptions 2Therminology 2.Basic Idea 3.Concept 1Representations 4.Core portlets 5.Detailed scenario 6.Requirements 7.Example 8.Conclusions

3 1. Goal A Grid Application Developer has developed a new application that must be offered for other people through a Web-based portal which is highly customised for the application and the user community. People being offered with this service do not know grids but they should be able to execute the grid application with their own custom inputs through the graphical interface of the Web portal. Application specific portal Grid application developer End users

4 1.1 Assumptions Grid Application Developer – would like to have a Portal customized for the application and end user community – knows how to develop a grid application in P- GRADE or how to port a legacy application to the grid with P-GRADE Grid Portal Developer – He knows the Java language and JSP (Java Server Pages) – He does not need to know the source code of P- GRADE – He and also the end users have user certificates to access the grid

5 1.2 Terminology Portal Administrator: installs P-GRADE Portal 2.9 Grid Application Developer develops a grid application with P-GRADE Portal 2.9 sends the application to the grid portal developer End Users executes the published application with custom input parameters by creating application instances using the published application as a template Grid Portal Developer Creates new role for the application develops a Gridsphere portlet that fits to the application I/O pattern and the end users’ needs and associate it with the role connects the GUI to P-GRADE Portal using the programming API of P-GRADE Application Specific Module using the Application Specific Module he publishes the grid application and its GUI for end users

6 2. Basic idea A new module called “Application specific module” has been developed for P-GRADE Portal that ease the creation of Application Specified Portlets – The module provides programming API to control P-GRADE portal applications – The module provides programming API to access P-GRADE Portal services Any kind of Graphical interface can be developed on top of this module – GUI written in JSP, JSTL (Java Servlet Tag Library ) and Java – GUI can be customized for the grid application – GUI can be customized for end users – GUI can benefit from all the P-GRADE Portal services

7 Application Specific Module 3. Concept Custom user interface (Written in Java, JSP, JSTL) Web browser EGEE and Globus Grid services (gLite WMS, LFC,…; Globus GRAM, …) Client P-GRADE Portal server Grid Services of P-GRADE Portal (workflow management, parameter study management, fault tolerance, …) Additional module for P-GRADE Core P-GRADE Portal You develop it Core ASM interfaces (Written in Java, JSP, JSTL)

8 3.1 Representations In Gridsphere's (or other portlet-framework's) point of view, the applications will be represented as “Roles”. Portlets that are developed for the end-users to use the applications, will be associated with these roles. One of the core, pre-developed ASM portlet can be used by the end-users to set their roles ( which application will be used) => After setting the roles, the portlets that are associated with the selected ones, will appear dynamically

9 4. Core Portlets of ASM : Publisher

10 4. Core Portlets of ASM : Role manager

11 P-GRADE PORTAL server Application Specific Module Services of P-GRADE Portal (workflow management, parameter study management, fault tolerance, …) 5. Detailed Scenario EGEE and Globus Grid services (gLite WMS, LFC, …; Globus GRAM, GridFTP, …) Portal Administrator installs the P-GRADE portal 2.9.*. Then installs Application Specific Module Portlet to publish applications Portlet to set Roles Inner services

12 P-GRADE PORTAL server Application Specific Module Services of P-GRADE Portal (workflow management, parameter study management, fault tolerance, …) 5. Detailed Scenario EGEE and Globus Grid services (gLite WMS, LFC, …; Globus GRAM, GridFTP, …) Grid Application Developer creates own Grid Application and publish it using the core ASM portlet. Portlet to publish applications Portlet to set Roles Inner services Grid Application

13 P-GRADE PORTAL server Application Specific Module Services of P-GRADE Portal (workflow management, parameter study management, fault tolerance, …) 5. Detailed Scenario EGEE and Globus Grid services (gLite WMS, LFC, …; Globus GRAM, GridFTP, …) Grid Portal Developer creates Portlet for the application (mainly one JSP and one eventhandler java class) Then associates it with the role using the core portlet of ASM Portlet to publish applications Portlet to set Roles Inner services Grid Application Portlet for the Application

14 P-GRADE PORTAL server Application Specific Module Services of P-GRADE Portal (workflow management, parameter study management, fault tolerance, …) 1.5 Detailed Scenario EGEE and Globus Grid services (gLite WMS, LFC, …; Globus GRAM, GridFTP, …) Finally the end-users creates own application from the published one, parameterizes and executes it using the developed portlet Portlet to publish applications Portlet to set Roles Inner services Grid Application Portlet for the Application Grid Application

15 6. Requirements for Portal Developer Requirements in general – Knowledge of JSP, JSTL, Java Requirements for developing: – P-GRADE Portal 2.9 source-code – Java Development Kit with a FrameWork (NetBeans or Eclipse)

16 The API Provides: Listing published applications Listing available instances New Instance creation Input data manipulation – FileUpload – Setting input text Managing instances' lifecycle – Create/Start/Check Status/Delete

17 7. Example Developed Interface for an Example Application (Sample Workflow)

18 7. Example

19

20 7. Example - JSP interface - overview

21 ArrayList arrayofinsts = this.app_spec_service.getAPP_SPECInstances(roleName,user.getUserID());

22 7. Example JSP interface – new instance private App_PublishService publish_service= App_PublishService.getInstance(); ArrayList publishedlist = publish_service.listPublishedWorkflows("Sample_root","Ap_Spec_Sample"); APP_SPECInstance newWork = new APP_SPECInstance(this.roleName,"Sample_root",projectName, projectDescription,base_wf); app_spec_service.addAPP_SPECInstance(this.roleName,user.getUserID(),newWork); this.app_spec_service.generateInstance(this.roleName,user.getUserID(),newWork.getName());

23 7. Example JSP interface - set input text ((APP_SPECInstance)this.app_spec_service.getAPP_SPECInstance(roleName, usr_id, WorkflowName)).setInputtext("Job0", "0", "input.txt", inputBean.getValue());;

24 7. Example JSP interface - set input text String WorkflowName = this.app_spec_service.getAPP_SPECInstance(roleName, usr_id, selected_instance).getAPP_SPECWorkflowName(); setInitWorkflow diset=new setInitWorkflow(user.getUserID(),WorkflowName); diset.deleteFiles(); this.app_spec_service.startInstance(user.getUserID(), this.app_spec_service.getAPP_SPECInstance(roleName, usr_id, WorkflowName)); this.app_spec_service.deleteAPP_SPECInstance(roleName,user.getUserID(), this.app_spec_service.getAPP_SPECInstance(roleName,user.getUserID(),instancename));

25 Conclusions Advantages: – Portal Developers can costumise/create portal interface faster – Provides high level API for P-Grade's services Further informationhttp://sourceforge.net/projects/pgp ortal/http://sourceforge.net/projects/pgp ortal/ – This version has not released yet. – ASM for P-Grade Portal 2.7 can be downloaded at sourceforge

26 Enjoy it ! Thank you for your attention!


Download ppt "Developing an Application-Specific Portal with P-GRADE Portal 2.9 Author: Ákos Balaskó, Date : 03-06-2010."

Similar presentations


Ads by Google