+ All Categories
Home > Documents > WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal...

WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal...

Date post: 24-Dec-2015
Category:
Upload: sarah-cross
View: 214 times
Download: 0 times
Share this document with a friend
Popular Tags:
31
WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server
Transcript
Page 1: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

WebSphere Portal, Portlets and Web Services

June 2002

Peter FischerDeveloper, WebSphere Portal Server

Page 2: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

Portal ArchitectureIntroduction

Page 3: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

3

What are Portals ?

Common access point to distributed information and applications

Typical Functions: User registration Authentication and Authorization Pluggable portal components: Portlets Personalization based on profiles / behavior Customization of pages by users Search Content Management

Page 4: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

4

Example of a Portal View

Page 5: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

5

LocalPortletLocal

Portlet

Major Functional Components

Portlet Container

SO

AP

Aggregation

Customization

User Registration/Selfcare

Au

then

tica

tio

n

Au

tho

riza

tio

n

LocalPortletLocal

PortletLocal

Portlet

RemotePortlet

RemotePortlet

RemotePortlet

RemotePortlet

RemotePortletWeb

Services

UserInformation

PortletSettings

Portlet Inst.Data

User‘sSelections

PortletProxy

PortletRegistry

Page 6: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

6

WebSphere Portal Quick Overview

Multi-Platform: Windows, AIX, Solaris Multi-Client: PCs, WAP, iMode Multi-Language: Serves different locales concurrently Multi-Authentication: Supports most relevant auth proxies Provides well-defined Portlet API and portlet auto-deployment Many Portlets on the IBM Portlet Marketplace (200+)

Portlets can exploit WebSphere web service functions Supports pluggable, interactive, user-facing web services Can publish portlets as web services using admin UI

Page 7: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

7

Portlet Services

Cre

dent

ial

Vaul

t

Sear

ch

Con

tent

M

gmt

Internet Internet

WebSphere Portal Server Architecture

Portlet API

AggregationModules

(HTML, WML, VoiceXML, ...)

Remote Portlet Web ServicesSOAP Router

Authentication

Authorization

WebSpherePortal Server

Data Store

WebSphereMember

Subsystem

Local PortletsLocal

PortletsLocal

Portlets

Local PortletsLocal

PortletsPortletProxies

GlobalUDDI

Directory

Intranet

Intranet

CorporateUDDI

Directory

J2EE/WebSphere APIs

JCA

C

onne

ctor

s

Ente

rpris

e Ja

vaB

eans

Mes

sage

B

eans

Local PortletsLocal

PortletsCorporate

Web Services

Local PortletsLocal

PortletsPublic

Web Services

Web Sphere Portal Server

Engine

...Si

te

Ana

lyze

r

PD WebSeal,WTE Seal,NetegritySiteminder,WebSphere Security, orothers via TAI

WPS Database,Policy Director, orNetegrity Siteminder

Secure Way LDAP, Domino LDAP, Netscape LDAP,Active Directory, or WMS DB

WPS DB or Tivoli Policy Director Vault

Intregrated Local Search (Juru)Domino Extended Search, EII.Third Parties

WPS Content OrganizerContent Integration Packs forThird Parties

DB2 or Oracle

Local PortletsLocal

PortletsPublic

RPWS Services

Local PortletsLocal

PortletsCorporate

RPWS Services

SOA

PSO

AP

RPW

S / SOA

P

Page 8: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

Portlets and Portlet API

Page 9: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

9

Portlets

Components designed to be aggregated in portals Aware of portal context

User profile information Per-portlet instance data stored by portal Per-portlet settings managed by portal Portlet window state (NORMAL, MIN, MAX) Portlet modes (VIEW, EDIT, CONF, HELP) Portlet events (action / message events)

Can be packaged in normal WAR Files with descriptor extensions

Page 10: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

10

Portlet Action Handling and Aggregation

Connectors

Web ServicesPortal

Servlet

LocalPortlet

LocalPortlet

LocalPortlet

Po

rtle

t A

PI

(In

voca

tio

n)

Portlet API (context)

Ser

vlet

AP

I

J2E

E A

PIs

Portal Infrastructure, User RegistryPersistent and Transient Portal State

EJBs

Action

Portlet Container

Page 11: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

11

Example of a Stock Quote Portlet

Stock prices for user-selected list of stock symbols: VIEW mode shows stock prices: doView method EDIT mode lets user change stocks: doEdit method HELP mode explains the portlet: doHelp method CONFIG mode lets administrator select stock quote source to use: doConfig method

Page 12: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

12

Example of a Portlet Portlets are specialized Servletspublic class StocksPortlet extends Portlet { public void init(PortletConfig config) { ... initialize portlet ... }

public void doView(PortletRequest req, PortletResponse rsp) throws PortletException, IOException { ... generate the portlet view ...}

public void destroy(PortletConfig config) { ... destroy portlet ... }

}

Page 13: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

13

Example of Portlet View Mode

Use of PortletData, Beans and JSP™ componentspublic void doView(PortletRequest req, PortletResponse rsp) throws PortletException, IOException {

// Get stock symbols from portlet instance dataPortletData data = req.getData();

String symb = (String) data.getAttribute("symbols");.. get prices for symbols from stocks service ..

StockBean stockBean = new StockBean();.. put stock symbol/price pairs in stock bean ..req.setAttribute("stockBean", stockBean);

getPortletConfig().getContext().include( "/WEB-INF/ViewStockQuotes.jsp",req,rsp);

}

Page 14: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

14

Example of Portlet Edit Mode

Tie Actions to PortletURLs to process Formspublic void doEdit(PortletRequest req, PortletResponse rsp) throws PortletException, IOException { // Create URI pointing to this portlet instance // and attach a portlet action PortletURI saveUri = rsp.createURI(); PortletAction saveAction = new Action(SAVE); saveUri.addAction(saveAction);

EditListBean editListBean = new EditListBean(); .. put saveURI and other data into the bean .. req.setAttribute("editListBean", editListBean);

getPortletConfig().getContext().include( "/WEB-INF/EditSymbolListForm.jsp",req,rsp);}

Page 15: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

15

More Information about Portlet Development

see Portlet Development Guideavailable at the portal libraryhttp://www-3.ibm.com/software/webservers/portal/library.html

Page 16: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

16

Java Portlet API (JSR 168) Defines interaction between portals and portlets Defines interfaces for interoperability of portals and portlets Based on the JavaTM Servlet API Provides additional abstractions for portal context

user object, persistent data objects, device information, portlet modes, window states, ...

Standardization in JSR 168 lead by IBM and Sun (see http://jcp.org/jsr/detail/168.jsp)

A Portlet API reference implementation will be donated to Apache Open Source Community

Page 17: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

17

Java Portlet API Supporters

Accenture Apache ATG BEA Boeing Borland Bowstreet Cap Gemini Ernst & Young Citrix DaimlerChrysler Documentum Enformia Ltd Epicentric Fujitsu Hewlett-Packard Hitachi

IBM (Spec Lead) Interwoven Macromedia McDonal Bradley Plumtree SAP Portals Silverstream Sybase Tarantella, Inc Vignette IONA Sun (Spec Lead) Computer Associates Peoplesoft SAS Oracle

Page 18: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

Portal WebServices

Remote Portlets

Page 19: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

19

Web Services

Web services are platform and language independent Description of Web services in WSDL

(Web Services Description Language) Invocation of Web services via SOAP

(Simple Object Access Protocol) Publish & Find through UDDI

(Universal Description, Discovery & Integration)

Page 20: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

20

Service Oriented Architecture – Publish, Find & Bind

ServiceRequestor

ServiceProvider

ServiceRegistry

Find

Bind

Publish

Page 21: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

21

„Traditional“ Web Service Usage Scenario

Portlets using data-oriented Web services Different data-oriented Web services expose different interfaces Specialized UI and proxy code required in specific portlets Local deployment of code is still necessary

Aggregation

Use

r‘s

Cli

ent

Portlet 1(Presentation)

Portlet 2(Presentation)

Portlet API

Portlet APIServiceSpecificProxy 1

ServiceSpecificProxy 2

Web Service 1(Data only,

no Presentation)

WS specificinterface

Web Service 2(Data only,

no presentation)

WS specificinterface

Page 22: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

22

Remote Portlets Web Services Generic Proxies using user-facing web services

All RPWS services have a common API No service specific portlets required Generic RPWS proxy portlet is implemented

once and used for all RPWS services

Aggregation

Use

r‘s

Cli

ent

Portlet API

Portlet API

GenericProxy

GenericProxy

RPWS Service 1(includes data and

presentation)

RPWS Service 2(includes data and

presentation)

SOAP

SOAP

RPWSAPI

RPWSAPI

Presentation and Interaction Layer

Page 23: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

23

Publishing Portlets as RPWS Services

Portal 1

Portal 2

PortletProxy

PortalAdministration

PortletRegistry

PortalAggregation

Portlet Proxy Entry

PortalAdministration

PortletRegistry

PortalAggregation

Portlet Entry

RemotePortlet

Portal 2

RPWS/SOAP

UDDIPortlet Entry

Portlet Entry

Portlet Entry

(1) Publish(2) Find & Bind

(3) Invoke

Page 24: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

24

Remote Portlet Web Services Goals Allow interactive, user-facing web services to be easily

plugged into all standards-compliant portals Let anybody create and publish their content and

applications as user-facing web services Portal administrators browse public or private UDDI

directories for RPWS services to plug into their portals as new portlets, without any programming effort

Let portals publish portlets so that they can be consumed by other portals

Make the internet a market of visual web services, waiting to be integrated

Page 25: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

25

Business Scenario ExamplesTo plug into portals ... ... Content Providers publish content as RPWS services

(e.g. Stock Quotes, News, Lottery Numbers, Sports Results, Flight Schedules, ...)

... Application providers expose apps as RPWS services(e.g. Stock Option Programs, E-Mail, Calendar, CRM, Workflow, Tax Calculation, Ticket Ordering, Travel Booking,...)

... Portal providers publish local portlets as RPWS services to share them with other portals (e.g. a content provider‘s portal might publish its portlets for re-use in employee portals of different companies)

Page 26: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

26

Web Services for Remote Portals (WSRP)

Standardization taking place in OASIS WSRP TCChairman: Thomas Schaeck

WSRP services are user-facing, interactive web services that may be aware of portal-side user profile information, devices, locales

WSRP will standardize: How to publish, find, and bind to WSRP services Metainformation for WSRP services (name, supported locales/markups, titles,

and descriptions, ...) Protocol for interaction between portals and WSRP services

WSRP Home Page: http://oasis-open.org/committees/wsrp/ Goal:

WSRP 1.0 Spec and Implementation year end 2002

Page 27: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

27

Companies who participate in WSRP TC

BEA Bowstreet Divine Epicentric Factiva France Telecom Fujitsu HP IBM Interwoven Lexis-Nexis Lotus Moravia IT

Netegrity Oracle Peoplesoft Plumtree Silverstream Stellent Sun Sybase Tibco WebCollage SAP Portals SeeBeyond

Page 28: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

28

How WSRP and Java Portlet API (JSR 168) fit

Portlet API defines Java API for local portlets WSRP defines user-facing, interactive web services that

plug & play with portals Goals:

Allow Java portlets to be wrapped and published to UDDI as WSRP services

Allow WSRP services to be integrated in portals by using generic portlet proxies

Page 29: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

29

Portal consuming .NET-based RPWS Services

PortalServers

IIS.NET

object

MicrosoftOffice as

OLE server

RPW

S

Page 30: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

30

RPWS service inside a Word Document

PortalServers

.NETobject W

SRP

Page 31: WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server.

Thank you !


Recommended