38
uPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

  • View
    225

  • Download
    2

Embed Size (px)

Citation preview

Page 1: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

Presenters:

Eric DalquistUnicon, Inc.

Andrew PetroYale University

Ken WeinerUnicon Inc.

“uPortal Roadmap”

Page 2: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

Overview

• uPortal releases• Where we are

– uPortal 2.4 – 2.4.x

• Where we’re going– uPortal 2.5 – 2.x– uPortal 3.0

Page 3: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal Releases

• Patch releases– Bug fixes, more stable

than previous release– Every 1-2 months– Easy to upgrade

• Minor releases– New features and

possible database changes

– Every 6-12 months– Not trivial to upgrade

• Major releases – Extensive changes– Every 2-4 years– Difficult to upgrade

uPortal 2.4.1

Major

Minor

Patch

Page 4: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

2000-2003

1.0 JSP Architecture1.5 Added roles1.6 Performance

2.3Apr

JSR 168Portlet

Support

2004

2.4Sep

3.0?

WSRPConsumer

uPortal Release Timeline

2005

2.0 XSLT Architecture2.1 Groups, stats, etc.2.2 Agg.layouts, i18n

2.5Mar ?

DistributedLayouts

NativePortlets

Page 5: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4

Page 6: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4 Summary

• 2.4 Released September 24, 2004– WSRP Consumer– EXCLUSIVE Portlet WindowState– Automatic CAR Deployment– Automatic RSS Version Detection– Multiple Named LDAP Server Option– Apache Commons Logging

• 2.4.1 Released November 4, 2004

Page 7: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4: WSRP Consumer

• Based on WSRP4J– Configuration information is provided by the

producer– Four service URLs are needed from the producer– A portlet handle is needed, multiple portlets may

be provided by a single producer

• WSRP Producer Deprecated– May be re-introduced in a later version

Page 8: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4: Portlet File Downloading

• Simple Servlet– Standard way of providing non-HTML content– Portlet places the file information in the session,

servlet uses that data to send the appropriate file– Tomcat bug prevents a portlet and servlet from

sharing a session, should be fixed in Tomcat 5.5

• EXCLUSIVE Portlet WindowState– Allows a portlet to function as a servlet– No portal markup is included in the output– Any file type can be provided to the client– Custom uPortal extension to the portlet spec

Page 9: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4: CAR Automation

• Publishing– Added to the Auto-Published category– Only Administrators given permissions

• Channel-Type Registration– Adds and configures a channel-type

• Table Creation– Can drop, create and populate tables using the

uPortal dbloader syntax

• Conditional Processing– CAR versions can be accounted for to prevent re-

deployment of the same channel

Page 10: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4: RSS Version Detection

• Updated Style Sheet for RSS Channels– Works with all versions of RSS feeds– Automatically adjusts and provides consistent

output

Page 11: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4: Multiple LDAP Server Support

• Multiple Named LDAP Servers– New ldap.xml configuration file– New LdapServices provides access to server

objects– Old LdapServices is deprecated, wraps new class– Server objects provide connections and meta

information

Page 12: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4: Error Viewing Servlet

• PortletException creations are logged to a table

• Error viewing servlet provides a view of the table

• Provides an easy way to track problems in a running portal environment

Page 13: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4: Apache Commons Logging

• Old Logging System– LogService uPortal class provided logging– It has been deprecated as of 2.4 and wraps a

Commons Log– LogServices.log(Priority.FATAL, “Message”, err)

• New Logging System– Use Commons Logging directly in each class– Allows different logging back-ends– Simpler configuration which can affect loggers in

libraries uPortal uses as well– log.fatal(“Message”, err)

Page 14: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4: Configurable Security Contexts

• Previously only one of each context type was really usable

• Contexts can now implement an interface that allows properties to be provided

• SimpleLdapSecurityContext is the only configurable context currently– Allows multiple LDAP servers to be used for

authentication

Page 15: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.4.2: Memory Leaks Plugged

• Going into uPortal 2.4.2• Several uPortal Objects were being leaked

– ChannelManager– IPerson

• Memory improvement:– All objects, down 75%– uPortal objects, down 94%– ChannelManager objects, down 100%

Page 16: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.5

Page 17: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.5: Portlet Caching

• Portlet content currently cached until user interacts with portlet

• Specification describes optional expiration based caching of portlet content

• Support in CVS and will be included in uPortal 2.5

Page 18: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.5: Portlet Spec Compliance

• uPortal did not support portlets sending redirects or changing WindowState during processAction

• A fix is in HEAD that allows for this behavior• uPortal 2.x is moving closer to 100% JSR-168

compliance• Goal is for all known issues to be resolved for

the 2.5 release

Page 19: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.5: Database Connection Pooling

• uPortal 2.5 will come with the Jakarta Commons DBCP library for pooling support

• Connections created through standard JDBC are now pooled by default; this is configurable

• Drastically increases initportal speeds with Oracle and PostgreSQL databases

• JNDI failover, if the JNDI lookup fails the plain JDBC connection is used instead

Page 20: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.5: JDK 1.4

• uPortal 2.4 is JDK 1.3 compliant• uPortal 2.5 will require JDK 1.4

• Chaining Throwables

Page 21: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.5: CError Refactoring

• CError displays full chained stacktrace– JDK 1.4 Throwable.printStackTrace()

• General refactoring and code improvement– Old: edit your CError locally to add special

rendering for new Throwables.– New: plug in a handler for the new Throwable to

be rendered specially.

Page 22: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.5: PersonDirectory Refactoring

• Spring• Dependency Injection in uPortal 2

• More modular implementation exercised by unit tests

Page 23: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

New Documentation Module

• Portal_documentation CVS module• Uses Anakia

• Old: edit some display HTML, then edit some print HTML

• New: edit one XML descriptor and Anakia generates the HTML according to the style

Page 24: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.5: Aggregated Layouts Revisited

• Some niggling details• Commitment: Fix by 2.5

• Default tab, UI for subscribe-time parameters, remove channel control in view mode, saving layout changes

Page 25: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 2.5: Unit testing

• Batchtest in build.xml• Improved test facilities (TransientDatasource,

PropertiesManager)• Refactorings to use Dependency Injection

make code more testable

• Speaking of DI, let’s talk about uPortal 3…

Page 26: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 3.0

Page 27: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 3.0: Overview

• Terminology and paradigm change: Channels replaced by Portlets

• Componentization of framework • Modular rendering pipeline• Clean separation of business logic and

persistence layer• Full support for uPortal 2 Channels• Upgrade tools

Page 28: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal Domain Objects

• Portlet Application DeploymentPortlet Deployment– Information from portlet.xml file

• Portlet Application DefinitionPortlet Definition– Deployment + Preferences

• Portlet Application EntityPortlet Entity– Definition + Preferences

• Portlet Window– Instances of Portlet Entity painted on screen– Keeps track of Portlet Window State– Referenced by portal layout

Page 29: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 3.0 Domain Object Architecture

Database

DAO’s

Registries

DAO Implementations e.g. Spring JDBC

Caching

uPortal Framework

Domain objects

Domain objectsTransfer objects

DomainObject

Factories

Page 30: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 3.0: Pluto 1.1

• Pluto 1.0– Community found it “clumsy and complex”

• Pluto 1.1– A refactoring and rewrite– Goals

• Simplify container, driver, and deployer• Reduce complexity of embedding container into a portal• Use common best practices and design patterns

– Dependency injection via Spring Framework– Good fit for uPortal 3

Page 31: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

WSRP Consumer and Producer

• Consumer– WSRP4J consumer proxy portlet

• Producer– Implementation of WSRP4J producer– Currently using Java Data Objects (JDO)– Missing DAO layer consistent with uPortal 3

Page 32: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 3.0 Rendering Architecture

Con

text

X

Con

text

A

Context Resolver

Def

ault

Con

text

Parameterprocessing

Ren

derin

g pi

pelin

e

Layoutgenerator

Transformer

Transformer

Filter

Serializer

Parses request URL andinitiates actions on portlets

Generates abstract user layout

Chain of transformers andfilters compiles presentationmarkup.

Selects context to process incoming request

Produces final markup, i.e. HTML, WML

Page 33: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 3.0: Security

• Acegi features– Has analog to uPortal

2 security providers– Designed with Spring

Framework in mind– URL protection– Bean method-level

protection– Support for Yale CAS– HTTP BASIC

Authentication

Page 34: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 3.0: Groups and Permissions

• Port of groups and permissions from uPortal 2

• Separate module within uPortal 3.0• Build process to produce separate jar files

– Allows groups/permissions to be used in applications outside of uPortal

Page 35: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 3.0: Milestones and Beta

• Milestone builds– Render a layout based on an XML layout file– Render a layout based on data from database and

ability to interact with portlets– Remaining features minus upgrade tools and

instructions

• Beta release– uPortal 2 feature set complete– Channels and CAR files work– Upgrade tools and instructions available

Page 36: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

uPortal 3.0: Help Needed

• Integrate Pluto 1.1 • Implement Authentication with Acegi • Introduce true DAO layer in WSRP impl • Provide Spring JDBC impl for WSRP DAOs • Make DAO unit tests utilize in-memory

HSQLDB database • Sync changes from uPortal 2 DbLoader• Channel adapter for backwards compatibility

Page 37: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

Project Tools

• Issue Tracking– Currently Bugzilla– Will be JIRA

• Collaborative documentation– Was nothing– Recently Yale’s

uPortalTiki Wiki– Will likely be Confluence

Page 38: UPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”

uPortal Roadmap

Eric DalquistUnicon [email protected]

Andrew PetroYale [email protected]

Ken WeinerUnicon [email protected]

Speaker Info:

The End

Questions ?