Collaboration with IBM WebSphere Portlet Factory and IBM WebSphere Portal
What Is a Portal?
A portal is a website that offers users a single point of access to a company's resources and services, requiring only one login to the website. It gives users personalized interaction with the resources and services, provides role-based access, and allows users to choose their experience and customize their own views of the website.
Users include employees, business partners, suppliers, and customers. "Company's resources and services" refer to applications, content, business processes, and people.
As an example, the following are some characteristics of a portal for a computer manufacturer.
- Using one login, employees can access applications from all departments, including human resources and technical support.
- An example of a personalized application is giving a different discount rate to customers based on their profiles. An example of personalized content is showing different news to business partners than suppliers.
- An example of role-based access is only allowing employees who are managers to see and to use the approved expense application.
- Users can add applications to their views, arrange applications, and customize the appearance of applications (for example, color).
Basic Portal Terminology
To an end user, a portlet is a window on a portal website that displays information or provides a function. To a developer, it is an application.
A portlet application is a collection of related portlets that share the same resources. For example, these are images, properties, files, and classes.
A portal page contains one or more portlets.
A portal website is built with portal pages.
IBM WebSphere Portlet Factory
IBM WebSphere Portlet Factory provides a rapid development tool, WebSphere Portlet Factory Designer, to simplify and accelerate the creation of portlet applications. WebSphere Portlet Factory Designer, hereafter called Portlet Factory Designer, is a graphical tool that is a plug-in to Eclipse-based integrated development environments (IDEs).
With Portlet Factory Designer, you create projects, under which you develop models using builders and generate the resulting portlet applications from those models. Typically, no coding is required.
It is worth mentioning that IBM WebSphere Portlet Factory can be used as a development tool for creating Java 2 Platform, Enterprise Edition (J2EE) Web applications, although Web applications are not the focus of this chapter. The benefit is that you would create one model and use the same model to generate both a Web and a portlet application.
IBM WebSphere Portlet Factory Basic Concepts and Definitions
- A WebSphere Portlet Factory application is made up of builders. A builder is a software automation component that generates necessary application code. It has a simple wizard-like user interface for a developer to provide inputs. Based on the inputs, the builder generates code, including JavaServer Pages (JSPs), Java classes, and Extensible Markup Language (XML) documents. Each builder offers the function of an application design pattern, such as displaying a list of data from a backend data store. The IBM WebSphere Portlet Factory product ships with more than 160 ready-to-use builders at the time of writing this chapter and supports the creation of new builders. Builders are implemented using Java and XML.
- Builders are assembled into models. A model is a made up of a number of builder calls. Web and portlet applications are generated from models. A well-designed application uses a model to provide data (a service provider model) and a different model to display the data (a service consumer/presentation model).
IBM WebSphere Portal
IBM WebSphere Portal has a complete set of portal capabilities to deliver business-to-business (B2B), business-to-consumer (B2C), and business-to-employee (B2E) portals. The capabilities include framework services, integration services, content services, and collaboration services.
Portals built using IBM WebSphere Portal are secure, personalized, and role-based with a unified user experience. These portals connect people, applications, business processes, and content (document and other types) so users can work productively and be more satisfied.
IBM WebSphere Portal software helps make it easy to create and maintain a portal. It is also faster. With a rich, responsive user interface based on Web 2.0 features, companies can provide self-service, collaboration, business intelligence dashboards, and more for their employees, partners, suppliers, and customers. As a result, they can respond quickly to business opportunities and drive business success.
IBM WebSphere Portal Basic Concepts and Definitions
- Portal server runtime
- The portal server runtime is the execution environment for the portlets. It is also called the portlet container. It is a J2EE application that runs on the IBM WebSphere Application Server.
- Portlet versus servlet
- Portlets can be administered while the Portal Server is running. For example, you can install/remove portlet applications and create/delete portlets and portlet settings. Portlets are more dynamic than servlets. Portlets may not send errors directly to browsers, forward requests, or write arbitrary markup to the output stream.
- Portal page layout
- The portal page layout defines the number of content areas within the page and the portlets displayed within each content area.
- Themes represent the overall look and feel of the portal, including colors, images, and fonts.
- Skin refers to the appearance of the area surrounding an individual portlet. Each portlet can have its own skin.
IBM WebSphere Portal Key Capabilities
IBM WebSphere Portal has a broad set of capabilities. It provides you with a runtime server, services, tools, and many other functions. It is not the intention to list all the capabilities here, but let's look at a few key ones.
- Composite application and mashup framework
- A composite application is a set of related and integrated services that support a business process. Users select components and logic from two or more applications to build a completely new application. You can derive that IBM WebSphere Portal itself is a security-rich composite application/view that assembles and delivers services in the form of portlets in the context of a business process.
- Web 2.0 support
- Live Text presents "one-click" access to relevant supporting information that "pops up" on the page while executing a business process.
- REST (Representational State Transfer) services further open the portal platform to composite mashup applications with services feeds from other Web applications.
- Client Side Aggregation reduces server-side processing, which dramatically improves end-user performance.
- Single sign-on (SSO)
- The basis for seamless, secure digital-identity-based access to multiple enterprise applications, systems, and networks.
- Role-based access
- Offers advanced control over access to information, content, and applications based on users' roles and responsibilities in the organization.
- Allows a portal or website to choose which content should appear for a particular user.
- Content management
- Gives business users the ability to create and manage portal content without information technology (IT) intervention or support.
- Enables users to share information and collaborate within the context of an application in which they are working. Provides access to collaboration tools including instant messaging, Web conferencing, and team workspaces.
- Functions include advanced search, search facets, search services, search scopes, search collections, adding custom links, summarizer, and search using different languages that the product supports. There are search services that come with IBM WebSphere Portal, and you can add one or more. By adding custom links, users can do direct search using popular search engines.