3.0

Overview

uPortal 3.0 has been refactored to provide for a clear long term uPortal development roadmap. This refactoring includes using Maven 2 for build management, a unified Spring based configuration, data import and export utilities for all data types, and use of Pluto 1.1 for portlet rendering.

Requirements

uPortal 3.0 requires JDK 1.5 or later and will compile and run under JDK6.

Release Notes

Hangups – Changes in 3.0 that might trip you up

3.0.5 - Detailed Release notes

Security Bug

  • UP-2515 - java.sql.SQLSyntaxErrorException: ORA-00917: missing comma Error Encountered when editing a channel from uportal

Bug

  • UP-2272 - JNDI session tracking fails during cross-context access
  • UP-2369 - import-layout_v3-0.crn no longer imports the THEME_SS_ID correctly
  • UP-2370 - 2 versions of commons-io jar deployed in uP3.0.3
  • UP-2405 - RSS channel fails on http: or https: UTF-8 feeds that begin with Unicode BOM
  • UP-2438 - Flyout navigation uses ID attribute which can produce elements with the same ID
  • UP-2457 - "add content" functionality in uPortal generates error in IE8
  • UP-2461 - USER_INFO map returns the "null" String instead of the null value when no value is there
  • UP-2470 - Portlet changing a default definition preference results in the definition level being updated instead of entity level
  • UP-2471 - Potential ConcurrentModificationException in PersonImpl
  • UP-2490 - SafeFileNamePhrase removes valid i18n characters
  • UP-2491 - PortletEntityRegistryImpl should validate the IPortletEntity before returning it
  • UP-2511 - Probable Thread Safety issue with ChannelManager.systemCache

Improvement

  • UP-2513 - Change default location of portal log file, CAS and all portlet-overlay portlets
  • UP-2520 - Enhance layout Import/Export to preserve existing STRUCT_IDs for layouts of fragment owners
  • UP-2543 - Add example for MySQL to rdbm.properties
  • UP-2545 - Thread pool check should log at warn, not error, needs message
  • UP-2549 - Add periodic output buffer flushing

New Feature

  • UP-2426 - Login Servlet should redirect to original URL
  • UP-2526 - Backport full layout export support

3.0.4 - Detailed Release notes

Bug

  • UP-647 - RDBMUserLayoutStore SQL escaping
  • UP-1487 - IllegalStateException and memory leak in RDBMDistributedLayoutStore._safeGetUserLayout
  • UP-1787 - Detached windows share portlet instance with undetached ones causing odd behaviour
  • UP-2355 - import-preferences should check that the dlm path ref is not null
  • UP-2356 - When attempting to Choose a Skin using the DLMUserPreferences channel user layouts get corrupted
  • UP-2357 - uportal-impl tests fail after adding additional datasource to datasourceContext.xml
  • UP-2359 - StaticRenderingPipelin throws Null pointer exception when trying to log error
  • UP-2366 - Maximizing a portlet via a Theme UI link does not set the correct WindowState
  • UP-2377 - User locale isn't passed to theme stylesheet
  • UP-2409 - Export operations may generate file names that are invalid on Windows
  • UP-2419 - If first call to a portlet is an action normal rendering is done
  • UP-2420 - EXCLUSIVE fname links don't work
  • UP-2421 - Null user attribute value causes NPE in CPersonAttributes
  • UP-2422 - Handle null IAuthorizationPrincipal in XalanAuthorizationHelperBean
  • UP-2425 - Customize link not rendered for layout owners
  • UP-2443 - findbugs automated code review: (possible) null pointer dereferences

Improvement

  • UP-2308 - Pass all parameters through LoginServlet if uP_fname is there [PATCH]
  • UP-2342 - uPortal should set a favicon in the <head>
  • UP-2380 - Add comments to uportal-impl/test/resources/properties/contexts/*

3.0.3 - Detailed Release notes

Fixes in 3.0.3 GA

  • UP-2043 - uPortal-3.0.0 does not unzip to uPortal-3.0.0 folder
  • UP-2165 - NPE when adding a channel without a category defined such as portal/userpreferences/dlm and layout-sitemap
  • UP-2221 - Enhance Channel export to include user-level subscription authorizations
  • UP-2222 - Stats monitor page does not work - throws multiple errors
  • UP-2263 - Session lost when user-agent does not accept cookies
  • UP-2281 - Build should only check for tomcat.home for tasks it is needed
  • UP-2296 - LoginServlet generates two Set-Cookie headers for JSESSIONID
  • UP-2298 - Multithreaded rendering of a portlet fails
  • UP-2303 - Transient portlet entities are persisted

Enhancements in 3.0.3 GA

  • UP-2289 - Correct old references to CError
  • UP-2299 - Clear cached user attribues at logout
  • UP-2300 - Add isMemberOf support to IXalanAuthorizationHelper
  • UP-2304 - Add ServletContextListener for starting JMX server on known ports

3.0.2 - Detailed Release notes

Fixes in 3.0.2

  • RemoteUserPersonManager related stack-overflow resolved
  • CAR loading from WEB-INF/cars is functional
  • Fixed black background in JSR-168 CSS
  • Consistent dynamic portlet title rendering

Enhancements in 3.0.2

  • Significant performance improvements for Hibernate backed DAOs
  • Unified sequence generation code with reduced synchronization costs
  • Allow dynamic title usage to be controlled via Channel Manager
  • Upgraded to Pluto 1.1.6

3.0.1 - Detailed Release notes

Fixes in 3.0.1

  • ProxyServlet security vulnerability
  • Various import/export script fixes including; export user-prefs from Oracle, import entity-types with certain group services.
  • Restored CacheLdapSecurityContext (was missing in 3.0.0)
  • Local LDAP authentication now works
  • https URLs now work for portlets
  • Resolved issue with password manager channel failing for non-local users
  • Resolved UI issues when adding a channel that fails to render
  • Removed .zip packaging of uPortal distributions due to issues in the Windows Extractor tool

Enhancements in 3.0.1

  • JSR-168 specification CSS classes
  • dbloader fails-fast if no mapping is found in dbloader.xml
  • Allow uP_fname & uP_args for guests
  • Allow more options for portlet preference loading for guests
  • VersionManager now populates "Powered By" string in theme
  • Added mediating factory bean to try multiple lazy-init beans by name and use the first one that instantiates without exception
  • Created a hidden category for channels to allow easier management
  • Updated patch revisions of all portal dependencies

3.0.0 - Detailed Release notes

Enhancements in 3.0.0 not present in any 2.6.x release

  • Maven 2 build management system which provides dependency management, build, test, and packaging functionality. An integrated Ant build script is also included to support all of the necessary Ant tasks from previous uPortal versions.
  • A single, consolidated Spring application context has been created and all new development for the framework is being done in a managed Inversion of Control fashion. This includes refactoring of some uPortal service classes and factories to provide the implementations via the Spring application context.
  • Deprecated code removal. Much of the code marked as deprecated in uPortal 2.6 has been removed and legacy static factory classes are being marked as deprecated where appropriate.
  • Aggregated Layout Manager (ALM) has been removed from the uPortal 3.0 code base. The ALM code has been moved into the contrib directory in version control to allow interested parties to continue development against the code.
  • Switch to the stand alone Person Directory library. The Person Directory code has been removed from uPortal and replaced with the API compatible stand-alone version of the code.
  • Upgraded to Pluto 1.1. This change involved removing and re-writing all JSR-168 portlet support code. This change provides more complete portlet support and aligns uPortal with the Pluto JSR-286 work.
  • Refactored rendering pipeline and channel rendering management code removing many instance scoped variables in favor of request attributes.
  • Moved all URL processing code into a dedicated request parameter processing pipeline which executes before the rendering pipeline starts.
  • A new XHTML/CSS based theme and skin that has a straight-forward directory and file structure.
  • Revised default content that better demonstrates the features and functionality of uPortal.

Enhancements in 3.0.0 that may also appear in a 2.6.x release

  • Data import and export tools. Andrew Wills has provided Cernunnos based scripts to import and export all uPortal data. These scripts provide a data migration patch when upgrading between versions of uPortal including uPortal 2.5 or 2.6 to 3.0