Download presentation
Presentation is loading. Please wait.
1
uPortal Roadmap Presenters: Eric Dalquist Unicon, Inc. Andrew Petro Yale University Ken Weiner Unicon Inc. “uPortal Roadmap”
2
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
3
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
4
uPortal Roadmap 2000-2003 1.0 JSP Architecture 1.5 Added roles 1.6 Performance 2.3 Apr JSR 168 Portlet Support 2004 2.4 Sep 3.0 ? WSRP Consumer uPortal Release Timeline 2005 2.0 XSLT Architecture 2.1 Groups, stats, etc. 2.2 Agg.layouts, i18n 2.5 Mar ? Distributed Layouts Native Portlets
5
uPortal Roadmap uPortal 2.4
6
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
7
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
8
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
9
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
10
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
11
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
12
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
13
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)
14
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
15
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%
16
uPortal Roadmap uPortal 2.5
17
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
18
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
19
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
20
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
21
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.
22
uPortal Roadmap uPortal 2.5: PersonDirectory Refactoring Spring Dependency Injection in uPortal 2 More modular implementation exercised by unit tests
23
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
24
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
25
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…
26
uPortal Roadmap uPortal 3.0
27
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
28
uPortal Roadmap uPortal Domain Objects Portlet Application Deployment Portlet Deployment –Information from portlet.xml file Portlet Application Definition Portlet Definition –Deployment + Preferences Portlet Application Entity Portlet Entity –Definition + Preferences Portlet Window –Instances of Portlet Entity painted on screen –Keeps track of Portlet Window State –Referenced by portal layout
29
uPortal Roadmap uPortal 3.0 Domain Object Architecture Database DAO’s Registries DAO Implementations e.g. Spring JDBC Caching uPortal Framework Domain objects Transfer objects Domain Object Factories
30
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
31
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
32
uPortal Roadmap uPortal 3.0 Rendering Architecture Context X Context A … Context Resolver Default Context Parameter processing Rendering pipeline Layout generator Transformer … Filter Serializer Parses request URL and initiates actions on portlets Generates abstract user layout Chain of transformers and filters compiles presentation markup. Selects context to process incoming request Produces final markup, i.e. HTML, WML
33
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
34
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
35
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
36
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
37
uPortal Roadmap Project Tools Issue Tracking –Currently Bugzilla –Will be JIRA Collaborative documentation –Was nothing –Recently Yale’s uPortalTiki Wiki –Will likely be Confluence
38
uPortal Roadmap Eric Dalquist Unicon Inc. edalquist@unicon.net Andrew Petro Yale University andrew.petro@yale.edu Ken Weiner Unicon Inc. kweiner@unicon.net Speaker Info: The End Questions ?
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.