End-User interface

Overview

DILIGENT’s Graphical User Interface (GUI) is a combination of JSR 168 Portlets, GWT applications, Java Applets and Servlets aggregated under a portal engine.

GUI’s main goal is to receive requests from the end user and to pass the needed information to the underlying services so as to fulfil these requests. For this reason, all the aforementioned technologies are used in order to extensively invoke DILIGENT services. Whenever GUI has to call a service, it must first locate where running instances of this service lie. The entry point to DILIGENT infrastructure is the DIS (DILIGENT Information Service), which is responsible for informing the callers about where they can find running instances of specific type of services. In general, GUI makes use of almost all the DILIGENT services. To name but a few: Search Master, Content Manager, Metadata Manager, Annotation Manager, Personalization Service, etc.

Below you can find a short description of the technologies used by DILIGENT’s GUI:

Features

The capabilities offered by the End User UI, come out of generic, application-level components placed at the disposal of the user, or by service specific User Interface Elements offered by lower level services. Among others, these elements allows that through the UI, the end user:

Operation

DILIGENT Portal is the Graphical User Interface through which the user is able to interact with the underlying infrastructure. Being such an intermediate, it must provide the users with a meaningful and friendly interface that will allow them to perform the desired actions.

The portal consists of the portal engine and a batch of about 25 distinct portlets. Portlets are divided in two main categories based on their design:

The lifecycle of a request is described bellow:

A user requests to see a web-page that contains a portlet. The portal engine decides whether or not to create a new instance of this class and it invokes the appropriate method(s). If needed, the portlet interacts with the DILIGENT infrastructure.

Each time a portlet needs to invoke a service, a string of actions must be performed. Firstly, it must retrieve user’s credential from the prtal engine. Then it has to query DIS (passing the credential) in order to receive the EPRs (End Point References) of this service’s running instances. Finally, it can call any of the received running instance EPRs in order to achieve the desirable result.

The outcome of the service invocation(s) is processed so as to construct the HTML in response to user’s request.

Figure 1: Portal in action

Whenever the user clicks an action, either the portlet itself or the GWT Servlet is invoked to serve this request. However, they both follow the aforementioned procedure for calling services.

Furthermore, sometimes intercommunication between portlets, servlets, or portlet-servlet is needed. This is achieved by passing information through the portal session from one component to another.

Read More

Operational overview

Detailed service design

Related Components & References

JSR 168 Portlet Specification

Google Web Toolkit

GridSphere

Credits

University of Athens, CNR-ISTI