Title: PORTALS, PORTLETS and WSRP
1PORTALS, PORTLETS and WSRP
2Outline of the presentation
- What is portal?
- What is portlet?
- What is WSRP?
- A portal architecture using WSRP
- WSRP - Detailed
3Portals
- Provide personalized access to information,
applications, processes and people. - Get information from local or remote data
sources, e.g. from databases, or remote web
sites. - Aggregate information into composite pages to
provide information to users in a compact and
easily consumable form.
4Portals (Cont.)
- Includes applications like e-mail, calendar,
organizers, banking, bill presentment, etc. - User profile management, e.g. Different views for
different user.
5Outline of the presentation
- What is portal?
- What is portlet?
- What is WSRP?
- A portal architecture using WSRP
- WSRP - Detailed
6Portlets
- Different rendering and selection mechanisms for
different kinds of information or applications. - Portlets are plugging components, which provides
an abstraction to hide differences. - Portlets are user-facing, interactive web
application components rendering markup fragments
to be aggregated and displayed by the portal.
7Portlets
- Content is provided
- by external services and displayed by specific
local portlets running on the portal. - by local portlets using only local portlets.
8Problems with Portlets
- This approach is not well suited to enable
dynamic integration of business applications and
information sources into portals - The process of making new portlets available is
tedious and expensive. - The presentation layer has to be redeveloped for
each portal.
9Problems with Portlet (Cont.)
- Web services may include application and
presentation layer and themselves produce markup
fragments. - Now easy to aggregate at the consuming portal.
- This solution is WSRP.
10Outline of the presentation
- What is portal?
- What is portlet?
- What is WSRP?
- A portal architecture using WSRP
- WSRP - Detailed
11WSRP
- Web Services for Remote Portals are user-facing,
interactive web services including presentation. - Easy to aggregate and can be invoked through a
common interface using generic portlet proxy code
that is built into the portal. - No special portlet code needs to be installed on
the portal at all, re-implementation of the
presentation layer on each portal is avoided.
12WSRP
- WSRP defines
- A WSDL interface description for invocation of
WSRP services - How to Publish, Find, Bind WSRP services and
metadata - Markup Fragment Rules for markup emitted by WSRP
services - Applicable Security Mechanisms
13Outline of the presentation
- What is portal?
- What is portlet?
- What is WSRP?
- A portal architecture using WSRP
- WSRP - Detailed
14A portal architecture using WSRP
15A portal architecture using WSRP (Cont)
16A portal architecture using WSRP (Cont)
- WSRP definitions can be published and found, and
bound through UDDI registres. - The following attributes are used to describe
WSRP in UDDI - T-model ID
- Service Name
- Supported locales
- Service Titles
- Service Descriptions
- Supported Modes
- Supported Markups
- Cachability
- Instance awareness
- Keywords
- Supported View States
- Allowed modifications
17A portal architecture using WSRP
18Outline of the presentation
- What is portal?
- What is portlet?
- What is WSRP?
- A portal architecture using WSRP
- WSRP - Detailed
19WSRP
- WSRP is a specification, based on SOAP.
- Defines SOAP operations that enable a Web Service
to return an HTML fragment that can be embedded
in another HTML page. - The users perception is of a small Web
application embedded inside another HTML.
20WSRP
- Producer The Web Service that return the HTML
fragments and acts as a mini application. - Consumer The HTML page (or application) that
embeds the Producer mini application. - End user The end user, who via the browser, sees
the two combined applications.
21WSRP
- Portlet Entity is a customization of the basic
portlet, which is bound to only one web service. - If producer provides this customized portlet
entity, it is Producer Offered Portlet Entity
(usually this is unique). - The Consumer can also create customizations of
Portlet Entities to create Consumer Configured
Portlet Entities.
22WSRP - Interfaces
- Markup an interface which includes operations
that enable the embedding of the Producer HTML
inside the Consumer. - Service Description an interface which includes
an operation that enable the Consumer to query
the Producer about its entities. - Portlet Entity Management an interface which
includes operations that enable the Consumer to
customize entities - Registration an interface which includes
operations that enable the Consumer to register
itself with the Producer.
23WSRP Markup Interface
- getMarkup this operation is invoked by the
Consumer in order to get the current HTML,
which will be embedded in the Consumer page. - performInteraction/performBlockingInteraction
this operation is invoked by the Consumer after
the end user interacted with the Producer HTML in
the combined Consumer page (SeeEnd user
interactions). - initCookie this operation helps Producers which
use HTTP cookies in their operations.
24WSRP - End User Interactions
- interaction URLs links in the Producer which
point to the Consumer in order to perform an
interaction. - interaction parameters the information which is
passed to the Consumer in the interaction URLs. - Two methods to insert interaction parameters
- Producer URL-Writing
- Consumer URL-Writing
- navigationalState giving getMarkup a
navigationalState will return an HTML fragment
that this navigationalState references.
25WSRP - End User Interactions
26WSRP Service Description Interface
- getServiceDescription returns a description of
the Producer. This information is also called the
Producer metadata and the Portlet meta-data
27WSRP - Portlet Entity Management Interface
- getPortletEntityPropertyDescription returns the
list of properties available for a Portlet
Entity, including their names, types, and human
readable titles. - setPortletEntityProperties sets the property
values of entities, in effect customizing them. - getPortletEntityProperties gets the property
values of entities.
28WSRP - Portlet Entity Management Interface (Cont.)
- destroyPortletEntities destroys a previously
created Consumer Configured Portlet Entity. - getPortletEntityDescription returns a
description of a whole Portlet Entity. - clonePortletEntity clones an entity to create a
new Consumer Configured Portlet Entity.
29WSRP - Registration Interface
- register register the Consumer at the Producer.
- deregister the inverse operation, which enables
the Consumer to end its relationship with the
Producer. - modifyRegistration enables the Consumer to
notify the Producer of changes in the data the
Consumer sent in the previous register operation.
30WSRP Producer Example -1
- getServiceDescription Logic
31WSRP - Producer Examples 1 (Cont.)
32WSRP - Producer Examples - 2
- getServiceDescription Logic
33WSRP - Producer Examples 2 (Cont.)
34WSRP - Producer Examples 2 (Cont.)