Building an Enterprise Information Portal with Jetspeed 1
What is an Entreprise Portal ? 2
Portal Internals 101 3
Anatomy of a Portal 3
About syndication 4
RSS: Rich Site Summary 4
OCS: Open Content Syndication description format 5
The Apache Java portal toolbox 7
Building an EIP with Jetspeed 8
Portal content 9
User management 10
Syndication structure 11
Portlets and data gateways 13
Site templates 14
What is an Entreprise Portal ?
The Enterprise Information Portal (EIP) concept has been coined by two Merryl Lynch analysts in a November 1998 report  to describe the emerging Intranet corporate sites that aimed to “unlock internally and externally stored information, and provide users a single gateway to personalized information needed to make informed business decisions.”
In order to achieve these objectives, an EIP needs to address the following issues :
Such an external information may be commonly Internet available content, like a Slashdot style public weblog or online publication, but also restricted data, like a custom news feed from a news agency or even a supplier parts catalogue.
Access disparate data stores within the company.
In many cases, the data that needs to be accessed will be structured and stored in an existing relational system. It may also consist of completely unstructured documents (office documents, HTML pages, etc…) available through file servers or content management systems. In order to access these custom stores, the portal will usually need application specific gateways.
Each business user that is identified on the portal is also usually already registered in several existing corporate data stores. For proper integration with the existing applications, the portal needs to seamlessly merge the different user databases.
This document will present a typical enterprise portal deployment project methodology, using Apache Jetspeed portal software and related components.
Portal Internals 101
Before tackling the portal project properly, we’ll first briefly present some base concepts of portal operation, especially the technologies related to syndication.
We’ll also rapidly describe the tools available within the Apache java community for building such portals.
Anatomy of a Portal
A portal is a complex web application composed of several frontend and backend components working together to offer rich user functionalities.
A typical portal architecture may be described by the following schema :
When a user requests a portal page, the aggregation engine queries the personalization module in order to retrieve his profile and content preferences.
This information is used by an internal content management system that will map each subscribed content in the user profile to the corresponding portal applicative component, usually called a “portlet”, and provide it with necessary operational parameters stored in the user profile.
These portlets will then retrieve or produce the appropriate content and send it back to the aggregation module, which will build the final page returned to the user.
If the portal offers this functionality, the user may also access directly the personalization module to customise the content of his portal page, either adding and removing portlets from this page or modifying the portlet operational parameters.
In addition to this front end operation, a portal system may also feature a syndication backend component that can be used to replicate remote content locally. Such a component will usually provide the bulk of the content available to the portal.