1 / 52

uPortal Roadmap

uPortal Roadmap. Patches, evolution, and revolution Andrew Petro, Yale University Eric Dalquist, Unicon. uPortal Releases. uPortal 2.4.3. Patch. Minor. Major. Types of releases. 2.4. 3 2.5. 1. Patch releases Bug fixes, backwards-compatible Every 1-2 months Easy to upgrade

jonny
Download Presentation

uPortal Roadmap

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. uPortal Roadmap Patches, evolution, and revolution Andrew Petro, Yale University Eric Dalquist, Unicon

  2. uPortal Releases uPortal 2.4.3 Patch Minor Major

  3. Types of releases 2.4.3 2.5.1 • Patch releases • Bug fixes, backwards-compatible • Every 1-2 months • Easy to upgrade • Minor releases • New features and possible database changes • Every 6-12 months • May take work to upgrade • Major releases • Extensive changes • Every 2-4 years • (May be) Difficult to upgrade 2.5.0 2.6.0 3.0.0

  4. Marching towards a particular release • Nightly build • “Milestone” • Alpha • Beta • Release Candidate • General Audience Release

  5. This Presentation • uPortal 2.x Roadmap • uPortal 3.x Roadmap • Questions and Answers

  6. uPortal 2.x Roadmap 2-4-patches 2-5-patches Towards 2.6 and beyond

  7. What’s a Roadmap? • 2.5.0 Happened. What’s in it? • 2.4.3 Plans • 2.5.1 Plans • 2.6.0 Opportunities • 3.0.0 Revolution

  8. uPortal 2.5.0 Evolutionary improvement Incremental new features, Takes some work to upgrade Released 26 May 2005 2.5.0

  9. 2.5.0 features • DLM • Better JSR-168 support • Require / embrace JDK 1.4 • Chaining throwables • Support JDK 1.5 • Spring • DOM3 / JAXP 1.3 • Threading / Concurrency library 2.5.0

  10. DLM • Alternative to ALM • Pushed fragments managed as layouts of “fragment owners” 2.5.0

  11. What is DLM? Personal Preferences Fragment Owners Declarative Configuration User’s Layout

  12. Library Tab 2.5.0

  13. Library Tab Plus 2.5.0

  14. Simple User Layout Management PersonDirectory Template Assignment Template Personal Layout 2.5.0

  15. Simple User Layout Management PersonDirectory Template Assignment Template Personal Layout 2.5.0

  16. “Distributed” User Layout Management PersonDirectory “Template” Assignment Dynamic “Template” Personal Layout 2.5.0

  17. “Distributed” User Layout Management Person Directory Template Assignment Dynamic Template Personal Layout 2.5.0

  18. SLM? ALM? DLM? Currently: SLM ALM DLM Where we’re going: SLM CLM

  19. JSR-168 support improvements • Expiration caching • Redirects • Window state changing in processAction 2.5.0

  20. JDK 1.4 / Chaining Throwables PortalException PortalException ChannelRenderingException NullPointerException 2.5.0

  21. JDK 1.5 support • Compiles and runs under JDK / JRE 1.5 2.5.0

  22. Spring • Declarative configuration • That’s about Java Objects, rather than about Strings • The sun is setting on static factories that read class names from portal.properties. • PersonDirectory as the first Springified component 2.5.0

  23. uPortal 2.4.3 The next 2-4-patches deliverable Backwards compatible conservative fixes, enhancement Sharing of fixes for released code. 2.4.3

  24. Adoption of threading library • Backport-util-concurrent 2.4.3

  25. Minor bugfixes 2.4.3

  26. 2.5.1 Backwards-compatible improvement. Bugfixes. 2.5.1

  27. uPortal 2.6 And beyond 2.6.0

  28. uPortal CVS head Head 2-5-patches 2.5.1 2.5.0 2-4-patches 2.4.3 … 2.4.0 2.4.1 portal

  29. Will there be a uP 2.6? • Are there incremental improvements that could be made beyond uP 2.5 that would make you want to deploy 2.6? • So much so that there are developers, resources interested in working to make this happen? • Then it makes sense to produce uP 2.6. 2.6.0

  30. Some uP 2.6 ideas • Continue to improve Layout Management • Stability, Stability, Stability • Have we stopped leaking memory yet? • Skinning improvements, CSS/Divs as default example • Groups and Permissions • More Spring • … 2.6.0

  31. Serializable Sessions • And sessions worth serializing • Beyond load balancing and clustering • State-retaining failover * • (For channels written to take advantage)

  32. JIRA for project planning • Identify desired improvements • Schedule for 2.6 • “Assign” resources • Track to completion 2.6.0

  33. Lather, Rinse, Repeat • Continue to incrementally improve uPortal 2.x so long as there’s interest and resources. 2.6.0

  34. Many deployers of uP 2.x

  35. Work to do Head 2-5-patches 2.5.1 2.5.0 2-4-patches 2.4.3 … 2.4.0 2.4.1 portal

  36. At some point • Interest in continuing to develop uP 2.x wanes • Because there’s something better to work on • Move what we need into uP 3 • And now, for uPortal 3 roadmap… 2.6.0

  37. uPortal 3.0.0 What’s next in portal technology 3.0.0

  38. 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 3.0.0

  39. Portlet Domain Objects • Portlet Application & Portlet Deployment • Information from portlet.xml • Generated from deployed applications • Portlet Application & Portlet Definition • Deployment + Configuration • Maps application idioms to uPortal idioms 3.0.0

  40. Portlet Domain Objects • Portlet Application & Portlet Entity • Definition + Configuration • Synonymous with channel publishing • Portlet Window • Portlet Entities painted on the screen • Tracks the state of the portlet • Referenced by portal layout 3.0.0

  41. Domain Object Architecture uPortal Framework Domain objects Registries Domain objects Transfer objects DomainObjectFactories Caching DAO’s DAO Implementations e.g. Spring JDBC Database 3.0.0

  42. 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 3.0.0

  43. Context Resolver Context A Context X Default Context Parameterprocessing … Rendering pipeline Layoutgenerator Transformer … Filter Transformer Serializer Rendering Architecture Selects context to process incoming request Parses request URL andinitiates actions on portlets Generates abstract user layout Chain of transformers and filters compiles presentation markup. Produces final markup, i.e. HTML, WML 3.0.0

  44. 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 3.0.0

  45. Groups and Permissions • Port of groups and permissions from uPortal 2 • Separate module within uPortal 3.0 • Configured using Spring • Build process to produce separate jar files • Allows groups/permissions to be used in applications outside of uPortal 3.0.0

  46. Person Directory • Person Directory has already been refactored in uPortal 2 • Separate module within uPortal 3 • Build process to produce separate jar files • Allows person directory to be used in applications outside of uPortal 3.0.0

  47. Portlet Publishing • First publish the portlet application • Map custom PortletModes and WindowStates • Map user attributes from uPortal to the portlet • Second publish portlets from the app • Description • Configuration • Groups and Permissions 3.0.0

  48. Utilities • Design to be configured as beans • Command line interface is a wrapper around the bean • Allows utilities to be run from portal code • DbLoader • Now supports constraints • Portlet Deployer 3.0.0

  49. 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 3.0.0

More Related