template-portlet logo

The template-portlet consists of a portlet example able to submit jobs towards different kinds of Distributed Computing Infrastructures (DCIs). This portlet contains the relevant elements needed to deal with DCIs. This portlet developed in the contest of the Sci-GaIA project to support the application development process during the Sci-GaIA Winter School The aim of the template-portlet is to provide an application template that Science Gateway developers can customize to fit their own specific requirements. To make easier the customization process, a customize.sh bash script is included inside the source code package.


This section explains how to deploy and configure the template-portlet.

1. Move into your Liferay plugin SDK portlets folder and clone the template-portlet source code through the git clone command:

git clone https://github.com/csgf/template-portlet.git

2. Now, move into the just created template portlet directory and execute the deploy command:

ant deploy

When the previous command has completed, verify that the portlet was “Successfully autodeployed”, look for a string like this in the Liferay log file under $LIFERAY_HOME/glassfish-3.1.2/domains/domain1/logs/server.log.

3. Then, open your browser and point at your Science Gateway instance and form there click Add > More in the Sci-GaIA category, click on Add button to add this new portlet. Following picture shows the correctly result:

template-portlet view

As soon as the portlet has been successfully deployed you have to configure it using the portlet configuration menu. Portlet configuration is splitted in two parts: Generic application preferences, Infrastructures preferences.

Generic application preferences

The generic part contains:

  • Application Identifier the identifier assigned to tha application in the GridInteractions database table.

  • Application label (Required) a short meaningful label for the application.

  • Production environment a boolean flag that specify if the portlet will be used in a production or development environment.

    • if true the development environment preferences will be shown
      • UserTrackingDB hostname hostname of the Grid and Cloud Engine Usertracking database. Usually localhost
      • UserTrackingDB username username of the Grid and Cloud Engine Usertracking database user. Usually user_tracking
      • UserTrackingDB password password specified for the Usertracking database user. Usually usertracking
      • UserTrackingDB database Grid and Cloud Engine Usertracking database name. Usually userstracking
  • Application requirements the necessary statements to specify a job execution requirement, such as a particular software, a particular number of CPUs/RAM, etc. defined using JDL format.

template-portlet preference


You can get the Application Idetifier inserting a new entry into the GridOperations table:

INSERT INTO GridOperation VALUES ('<portal name>' ,'Template Portlet');
  -- portal name: is a label representing the portal name, you can get the
  -- right value from your Science Gateway istance.

Infrastructure preferences

The infrastructure preferences section shows the e-Infrastructures configured. Using the actions menu on the right side of the table, you can:

  • Activate / Deactivate
  • Edit
  • Delete

an available infrastructure. The Add New button is meant to add a new infrastructure available to the application. When you click this button a new panel, will be shown with several fields where you can specify the Infrastructure details.

The fields belonging to this panel are:

  • Enabled A boolean which enable or disable the current infrastructure.
  • Infrastructure Name (Required) The infrastructure name for these settings.
  • Middleware (Required) The middleware used by the current infrastructure. Here you can specify 3 different values.
    • an acronym for gLite based middleware.
    • ssh for HPC Cluster.
    • rocci for cloud based middleware.

Following fields will be traslated in the relevant infrastructure parameters based on the value specified in this field.

  • BDII host: The Infrastructure information system endpoint (URL).
    • If Middleware is ssh here you can specify a ”;” separated string with ssh authentications parameters (username;password or username for key based authentication).
    • If Middleware is rocci here you can specify the name of the compute resource that will be created.
  • WMS host: is the service endpoint (URL).
  • Robot Proxy host server: the robot proxy server hostname.
  • Robot Proxy host port: the robot proxy server port.
  • Proxy Robot secure connection: a boolean to specify if robot proxy server needed a SSL connection.
  • Robot Proxy identifier: the robot proxy identifier.
  • Proxy Robot Virtual Organization: the virtual organization configured.
  • Proxy Robot VO Role: the role virtual organization configured.
  • Proxy Robot Renewal Flag: a boolean to specify if robot proxy can be renewed before its expiration.
  • RFC Proxy Robot: a boolean to specify if robot proxy must be RFC.
    • If Middleware is rocci this field must be checked.
  • Local Proxy: the path of a local proxy if you want use this type of authentication.
  • Software Tags: infrastructure specific information.
    • If Middleware is rocci here you can specify a ”;” separated string with <image_id>;<flavor>;<link_resource>
template-portlet preference


The usage of the portlet is really simple. The user can optionally select to upload a file and/or spacify job label, that is a human readable value used to idetify the job execution on DCIs. Each field are optional, if you don’t specify any label a default one will be created with the username and a timestamp.

template-portlet view


If you have any questions or comments, please feel free to contact us using the Sci-GaIA project dicussion forum (discourse.sci-gaia.eu)


Roberto BARBERA - University of Catania (DFA),

Bruce BECKER - Council for Scientific and Industrial Research (CSIR),

Mario TORRISI - University of Catania (DFA)