Download presentation
Presentation is loading. Please wait.
Published bySarah Cross Modified over 9 years ago
1
WebSphere Portal, Portlets and Web Services June 2002 Peter Fischer Developer, WebSphere Portal Server
2
Portal Architecture Introduction
3
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
4
4 Example of a Portal View
5
5 Local Portlet Local Portlet Major Functional Components Portlet Container SOAP Aggregation Customization User Registration/ Selfcare AuthenticationAuthorization Local Portlet Local Portlet Local Portlet Remote Portlet Remote Portlet Remote Portlet Remote Portlet Remote Portlet Web Services User Information Portlet Settings Portlet Inst. Data User‘s Selections Portlet Proxy Portlet Registry
6
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
7
7 Portlet Services Credential Vault Search Content Mgmt Internet WebSphere Portal Server Architecture Portlet API Aggregation Modules (HTML, WML, VoiceXML,...) Remote Portlet Web Services SOAP Router Authentication Authorization WebSphere Portal Server Data Store WebSphere Member Subsystem Local Portlets Local Portlets Local Portlets Local Portlets Local Portlets Portlet Proxies Global UDDI Directory Intranet Corporate UDDI Directory J2EE/WebSphere APIs JCA Connectors Enterprise Java Beans Message Beans Local Portlets Local Portlets Corporate Web Services Local Portlets Local Portlets Public Web Services Web Sphere Portal Server Engine... Site Analyzer PD WebSeal, WTE Seal, Netegrity Siteminder, WebSphere Security, or others via TAI WPS Database, Policy Director, or Netegrity 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 Organizer Content Integration Packs for Third Parties DB2 or Oracle Local Portlets Local Portlets Public RPWS Services Local Portlets Local Portlets Corporate RPWS Services SOAP RPWS / SOAP
8
Portlets and Portlet API
9
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
10
10 Portlet Action Handling and Aggregation Connectors Web Services Portal Servlet Local Portlet Local Portlet Local Portlet Portlet API (Invocation) Portlet API (context) Servlet API J2EE APIs Portal Infrastructure, User Registry Persistent and Transient Portal State EJBs Action Portlet Container
11
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
12
12 Example of a Portlet Portlets are specialized Servlets public 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... }
13
13 Example of Portlet View Mode Use of PortletData, Beans and JSP™ components public void doView(PortletRequest req, PortletResponse rsp) throws PortletException, IOException { // Get stock symbols from portlet instance data PortletData 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); }
14
14 Example of Portlet Edit Mode Tie Actions to PortletURLs to process Forms public 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); }
15
15 More Information about Portlet Development see Portlet Development Guide available at the portal library http://www-3.ibm.com/software/webservers/portal/library.html http://www-3.ibm.com/software/webservers/portal/library.html
16
16 Java Portlet API (JSR 168) Defines interaction between portals and portlets Defines interfaces for interoperability of portals and portlets Based on the Java TM 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)http://jcp.org/jsr/detail/168.jsp A Portlet API reference implementation will be donated to Apache Open Source Community
17
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
18
Portal WebServices Remote Portlets
19
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)
20
20 Service Oriented Architecture – Publish, Find & Bind Service Requestor Service Provider Service Registry Find Bind Publish
21
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 User‘s Client Portlet 1 (Presentation) Portlet 2 (Presentation) Portlet API Service Specific Proxy 1 Service Specific Proxy 2 Web Service 1 (Data only, no Presentation) WS specific interface Web Service 2 (Data only, no presentation) WS specific interface
22
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 User‘s Client Portlet API Generic Proxy Generic Proxy RPWS Service 1 (includes data and presentation) RPWS Service 2 (includes data and presentation) SOAP RPWS API RPWS API Presentation and Interaction Layer
23
23 Publishing Portlets as RPWS Services Portal 1 Portal 2 Portlet Proxy Portal Administration Portlet Registry Portal Aggregation Portlet Proxy Entry Portal Administration Portlet Registry Portal Aggregation Portlet Entry Remote Portlet Portal 2 RPWS/ SOAP UDDI Portlet Entry (1) Publish (2) Find & Bind (3) Invoke
24
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
25
25 Business Scenario Examples To 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)
26
26 Web Services for Remote Portals (WSRP) Standardization taking place in OASIS WSRP TC Chairman: 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/http://oasis-open.org/committees/wsrp/ Goal: WSRP 1.0 Spec and Implementation year end 2002
27
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
28
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
29
29 Portal consuming.NET-based RPWS Services Portal Servers IIS.NET object Microsoft Office as OLE server RPWS
30
30 RPWS service inside a Word Document Portal Servers.NET object WSRP
31
Thank you !
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.