uportal 2.6 andrew petro ja-sig denver 25 june 2007 © copyright unicon, inc., 2007. some rights...

68
uPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved. http://creativecommons.org/licenses/by-nc/3.0/us/ Portions borrowed from previous JA-SIG presentations by Andrew and others.

Upload: willie-tuley

Post on 15-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

uPortal 2.6

Andrew PetroJA-SIG Denver

25 June 2007© Copyright Unicon, Inc., 2007. Some rights reserved. http://creativecommons.org/licenses/by-nc/3.0/us/ Portions borrowed from previous JA-SIG presentations by Andrew and others.

Page 2: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Meet your speaker

• Andrew Petro

• Unicon, Inc.

• Software developer, cooperative support

uPortal lead, and occasional uPortal

consultant

• Previously with Yale University ITS

Technology & Planning

Page 3: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

What’s uPortal? – Open Source

• Gratis (no license fee)

• Open source -- New BSD license

Page 4: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

What’s uPortal? Collaboration

• uPortal results from the collaboration of higher-

education IT staff and associates

• It’s what happens when 60 committers collaborate

over the project so far.

• John Fereira documentation, Bill Thompson board

liason, Eric Dalquist works to improve portlet support,

MUN builds a web proxy channel, UC Irvine builds a

menu channel – and Yale takes it and runs with it,

implement shared authN needs, …

Page 5: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

What’s uPortal: Community

• Many schools use uPortal in production

today.

• uPortal underlies Unicon’s Academus portal

product and SunGardHE’s Luminis portal

product

Page 6: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved
Page 7: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved
Page 8: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved
Page 9: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved
Page 10: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

What’s uPortal? Committers

• Apache-style voting in of new committers

• 16 active committers over the preceding 12

months

• Welcome to uPortal’s newest committer,

Stéphane Bond, CRIM

Page 11: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

What’s uPortal? Maintenance

• uPortal 2.5.3.1

– Fixes critical security vulnerability in

RemoteUserSecurityContext

Page 12: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Security Contact Group

Page 13: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

What is uPortal? Technology

Authentication: pluggable, CAS

Attribution - PersonDirectory

Groups - GaPs

Layout - DLM

Permissions - GaPs

Page 14: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

uPortal’s rendering pipeline

Page 15: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

uPortal 2.6.0 status

• Release candidate 2 posted on Friday

Page 16: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

2.6.ish code in production at Yale

• Yale grabbed /trunk before the 2.6 RC series

Page 17: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

What’s new in uPortal 2.6? Improved UI

• Drag and drop user preferences

– Turned off by default, but try-out-able in default

theme

• XHTML theme available as default

• Fresh, new look

Page 18: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Fixed portlet preferences handling

• Fixed handling of portlet preferences

– Portlets become multiply subscribable with

different prefs, e.g. RSS readers

• Thanks to Tim Carrol for producing a patch,

and Eric Dalquist for merging the patch into

uPortal

Page 19: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Preferences per-portlet-subscription

Page 20: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Improvements

• Pluggable DLM processing pipeline

• Numerous fixes and enhancements

Page 21: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Demo improved JSR-168 support

• Two new JSR-168 portlets

Page 22: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Eric Dalquist / U Wisc-Madison

Page 23: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Drag and Drop user preferences

Page 24: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Status of Drag and Drop

• Works

• Ships with theme/preferences/javascript to

drive it

• Is turned off by default

• Your theme needs upgraded to use it

• Built for DLM.

Page 25: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Drag and Drop demo

• Attempt at live demo…

Page 26: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Grab

Page 27: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Drag

Page 28: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Drop

Page 29: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Oooooh. Aaaaaah.

Page 30: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Or maybe not?

Page 31: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Search for portlet

Page 32: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

While seeing context

Page 33: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Layouts are great for dashboards

• But right now I want to find and use a

particular service

Page 34: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Live demo?

• http://portal.yale.edu/

• http://localhost:8080/uPortal/

Page 35: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Ooooh, Aaaaah.

• Ooooooh.

• Aaaaaah.

Page 36: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

How did you do that?

• I didn’t, Jen and Mark did, building on the

work of Pete and others.

• Pluggable DLM processing pipeline

• In dlmContext.xml:

<!-- Uncomment to enable AJAX preferences -->

<bean

class="org.jasig.portal.layout.dlm.remoting.AjaxPreferencesThemeParamInjector"

singleton="false"/>

Page 37: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Now that I’ve got a hammer…

• Alerts-like functionality

• Just-in-time insertion of “stuff”

• Users who like these channels also liked..

Page 38: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Default Div-driven CSS-styled DLM theme

• From Rutgers

• Yeah, it’s got grass at the bottom.

Page 39: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved
Page 40: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

CSyndFeedReader

• Syndicated feed reader channel

• Backwards compatible with CGenericXSLT

RSS channel configuration

• Built on Rome library

• XSLT Java processing (more robust)

• End-user-configuration

Page 41: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Fixes from the 2.5.x series

• Should already all be in 2.6.0

Page 42: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Requirements

• JDK 1.5 or JDK 1.6

• Tomcat 5.something (5.5.23 for least

headaches)

Page 43: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

CSqlQuery

• Simple channel

• Deployer provides a SQL query

• It renders the result

• Customizing the XSLT optional

• Oh, about those XSLTs…

Page 44: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

JSP Channel

• JSP as alternative to XSLT

• Channel XML XSLT HTML

• Channel Model JSP HTML

Page 45: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Refactored channels away from IMultithreaded*

• Reduced lock thrash

• Simpler

• Easier to debug / log

Page 46: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

CGenericXSLT System Cache Scope

• Ability to cache

CGenericXSLT output

across the portal

• How many cached

instances of this

channel would you like

in your portal JVM?

Page 47: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

What next for uPortal?

Page 48: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Actually release 2.6

• Soon following this conference.

Page 49: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Platform Maturity

• uPortal Manual

• Convergence and consolidation of wandering

“contributions”

• Inversion of Control

• Codebase pruning

• API formalization

• Project formalization

Page 50: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

uPortal Manual wiki space

• Effort launched by Jason Shao

Page 51: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Consolidation

• Neat channels and plugins out there

• “Contributions”

• Pull them into the core uPortal project

Page 52: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

How to spend deployer time

More valuable

• Incrementally involving

shared-source solutions

• Collaboration

• Evaluating working

examples

• The concept being

centrally proved

Less valuable

• Finding contributions

• Shoehorning them into

the portal

• Hacking at them to

make them work

• Moving on to the next

fire

• Building local POCs

Page 53: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Candidates

• Webmail

• Rutgers Alerts

• Announcements

• Menu channel

• Survey / Elections /

Fora

• Toro portlets

– (GPL w/ FLOSS

Exception)

• Duke’s portlets released

today

• Done: PBookmarks

• Done: Google Portlet

Page 54: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Higher Education alignment?

• Announcements

• Alerts

• First year checklists

• Directory search

• Computer cluster support

• Helpdesk

• Briefcase

Page 55: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Invert Control - Concept

• *Not* go hog-wild changing everything

– We have working code

• But eliminate the number one impediment to

further incrementally improving uPortal

• uP2-uP3-CAS3 synergy – components for all

DI-able

Page 56: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Invert control - Practice

• Spring WebMVC

– Controllers instead of Servlets

– Wire the most important services

• Synergy with contribution consolidation

Page 57: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Codebase pruning

• Embed CAS

• Adopt new standalone GaPs project

• Adopt new standalone PersonDirectory

Page 58: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Embed CAS

• This is a really excellent idea, if I do say so

myself.

• uP security API feels dated. CAS3 feels

modern. Whole JA-SIG project around

authN.

Page 59: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Pick up CAS features

• Lots of authN provider

options

– LDAP

– Kerberos

– SPNEGO

– OpenID

– Google Account

• Lots of server flexibility

– I’d like three authN

methods, except on

Tuesdays

– Login workflow engine

• Documentation

• Discussion

• Scott answers your

questions

Page 60: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

You mean you’re forcing CAS on me?

• No. I mean the most efficient way to

implement support for whatever you really

wanted to integrate with is to plug into CAS

rather than plugging into security.properties

• Though proxy tickets do have portal synergy

Page 61: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Migrate to Pluto 1.1

• If there’s a good reason to?

• “Pluto 1.1 aims to simplify the architecture in

order to make it more user and developer

friendly. You should find Pluto 1.1 easier to

get started with, easier to understand, and

easier to embed with your portal.”

• Sounds good to me, let’s do it.

Page 62: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

API Formalization

• Just because Jan left the uPortal developer

community, doesn’t mean he wasn’t right.

• What are the “supported” APIs, and what are

incidental APIs?

Page 63: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

uPortal’s rendering pipeline

Page 64: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved
Page 65: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

How much theme can we share?

• CSS and images.

• Write skins, not structure and theme

transforms?

Page 66: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Build engineering?

• Eric, Scott, Elliott, etc. tell me that Maven2

works great

• Okay, let’s use that.

Page 67: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

To review

• uPortal 2.5.3.1

– General audience release available today

• uPortal 2.6.0 RC2

– Latest release candidate

– Quite feasible to run with this

• uPortal 2.6.0 GA

– Soon

• uPortal 2.6.1, 2.7, etc. ongoing evolution

Page 68: UPortal 2.6 Andrew Petro JA-SIG Denver 25 June 2007 © Copyright Unicon, Inc., 2007. Some rights reserved

Andrew [email protected]

Questions?