Download presentation
Presentation is loading. Please wait.
1
Portals: Background, Development & Conversion
February 2005 Portals: Background, Development & Conversion Rob Butler
2
Portals - Background, Development & Conversion
Agenda Background What’s a portal look like? What is a portal? Why portals? Why now? Development Portlets 101 Converting existing applications Architecture (second presentation) Caching Security Inter-portlet communication Portals - Background, Development & Conversion
3
What’s a portal look like ?
Portals - Background, Development & Conversion
4
Portals - Background, Development & Conversion
What is a portal? A portal aggregates multiple applications that would typically be presented as separate sites into a single view. A new model for web development Now you build portlets instead of web applications. A portal is comprised of: Portlets: the logic. What you would typically think of as a web application. Generally there are multiple portlets in a portal. Each portlet is responsible for only a section of the web page, not the entire web page like with a normal web application. Skins: the structure of the site. The skin determines where a portlet is on the page and the site layout. Look & feel: the colors and font styles that provide a consistent appearance across portlets. APS – Bea is traditional an APS, but are moving towards more SES features SES – Plumtree is considered the traditional SES, including many collaborative features in their package APS/SES – IBM’s WebSphere Portal is a combination of APS and SES Portals - Background, Development & Conversion
5
Portals - Background, Development & Conversion
Why portals? The ultimate integrated enterprise desktop Off the shelf portal servers Off the shelf applications (portlets) In-house custom developed applications (portlets) External service provider applications (WSRP portlets) Single sign on Personalization All available from a single URL Cohesive look & feel A portal integrates portlets, built by separate groups, into a single website that looks as if it were developed by a single group. Administratively change the look & feel of the entire portal. No code changes necessary. APS – Bea is traditional an APS, but are moving towards more SES features SES – Plumtree is considered the traditional SES, including many collaborative features in their package APS/SES – IBM’s WebSphere Portal is a combination of APS and SES Portals - Background, Development & Conversion
6
Portals - Background, Development & Conversion
Why Now? Accepted industry standards JSR-168 the Java Portlet API. JSR-168 compliant portlets can be deployed to any JSR-168 compliant portlet container, just as servlets can be deployed to any compliant servlet container. Creates the potential for a portlet application market. Eliminates vendor lock in. WSRP (Web Services for Remote Portlets) Builds on top of web services to allow the portlet UI to be used on a separate and remote portal. Instead of exposing your data via web services, expose the entire user interface and workflow to external portals. External portals simply consume your remote portlet and don’t need to develop anything. Creates the potential for a portlet Application Service Provider (ASP) market. Allows a level of integration that simply wasn’t possible before. APS – Bea is traditional an APS, but are moving towards more SES features SES – Plumtree is considered the traditional SES, including many collaborative features in their package APS/SES – IBM’s WebSphere Portal is a combination of APS and SES Portals - Background, Development & Conversion
7
Portals - Background, Development & Conversion
Portlets 101: JSR-168 Terminology HTML Fragment Name spacing URLs Action Render Images Resources (PDFs, etc.) Look & feel Branding CSS Confusing terminology Portlet (application - war) Portlet (as seen on glass) Portlet (classes) Portals - Background, Development & Conversion
8
Portals - Background, Development & Conversion
Portlets 101: JSR-168 Lifecycle & Configuration Startup Action Render Modes (help, edit, view, custom) Window States (min, max, normal, custom) Preferences Portlet.xml & web.xml Portlet session & web session Inter-portlet communication Portlet API extended sub-set of servlet API Portals - Background, Development & Conversion
9
Portals - Background, Development & Conversion
Portlets 101: WSRP WSRP (Web Services for Remote Portlets) Producer Exposes a portlet for use remotely via web services Consumer Uses a portlet from a producer Portlet Preferences Consumer can set these too Compliance Test Kit Non-invasively collects web service messages between a producer and a consumer. Later it examines the messages to determine if they conform to the specification, and produces a report. Portals - Background, Development & Conversion
10
Portals - Background, Development & Conversion
Portlets 101: Security Single Sign On Local portlets Remote portlets SAML & WS-Security Federated security Portals - Background, Development & Conversion
11
Converting Existing Apps
The magic portlet tunnel Simply point this at your web application and it is now available as a portlet. It doesn’t exist. IFrames This is not a portlet. You are simply exposing a regular web application in a smaller window within a web page. You obtain none of the benefits of a portal. Screen scraping Ok for very small applications, but will become unwieldy and difficult to maintain very quickly. If you want to try it, check out RoboSuite from Kapow: Portals - Background, Development & Conversion
12
Converting Existing Apps
Struts framework extensions Common problems Struts was never intended as a portlet MVC framework. Application must be Struts 1.1 or later. Struts 1.0 applications won’t work. Any extensions to the struts servlet must be re-factored into a struts plug-in that extends the vendor supplied plug-in. Any existing struts plug-in must be re-factored to extend the vendor supplied plug-in. Cookies and manipulation of the response are no longer easily done and may require code changes. Web application workflow is different from portlet workflow. Pop-ups are less/not acceptable in a portlet Getting pop-ups to work at all in a portlet requires some hacking Surround pop-up html fragment with <DIV> tag Use JavaScript to “poppetize” the page. i.e. remove the portal skin from around it. Portals - Background, Development & Conversion
13
Converting Existing Apps
Struts framework extensions Jetspeed 2 Very minimal capabilities. Only supports HTML:LINK tag. Form tags, rewrite tags, image tags, etc. have not been extended yet. Thus basically useless. Promising because it is built on top of the JSR-168 API’s, so ultimately it would be useable with any JSR-168 portlet container. BEA Weblogic Portal Problems with name spacing Problems with exposing portlets via WSRP Proprietary – will only work on BEA Weblogic Portal Must upgrade extension jars when upgrading portal version. IBM Websphere Portal Must use portal server version 5.1 or later; many problems that will never be fixed in the older versions. Still has issues, but they should be fixed in the next release Proprietary – will only work on IBM WPS Portals - Background, Development & Conversion
14
Converting Existing Apps
Re-building as a JSR-168 portlet. Perceived as the most expensive option The only one that is portable The only one that will really work well. Really the only option if you will be exposing your portlet via WSRP. Portals - Background, Development & Conversion
15
February 2005 Questions? Download the slides for this presentation and Part 2 – Portals: Best Practices from:
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.