IBM Workplace Services Express 2.0 is a new collaborative portal solution for small- to medium-businesses. It represents a wealth of new enhancements from its predecessors, including WebSphere Portal Express. It has a new installation that dramatically improves the time it takes to deploy and operate the portal. Typical installation times are under an hour for both Windows and Linux platforms with required hardware. Usability has been greatly enhanced from previous versions of WebSphere Portal Express, including 18 new out-of-the-box themes, dragging/dropping of portlets to define page layout, a portlet palette for constructing portal pages, and many, many more enhancements. For more information regarding the new enhancements in Workplace Services Express 2.0, see the links provided in the Resources section of this article.
Technically speaking, Workplace Services Express 2.0 combines assets from both WebSphere Portal and IBM Workplace. Each of these products has a similar programming model in that IBM Workplace builds on the core componentry of WebSphere Portal, but adds additional capabilities for portlets added to Workplace applications, including policy-driven provisioning, role-based user access, integrated search, and many more capabilities. For a complete explanation of the Workplace Services Express capabilities, refer to the IBM Workplace Services Express InfoCenter.
This article focuses on the Lists portlets in Workplace Services Express and compares and contrasts these portlets in a portal page to Workplace applications. This article assumes that you are an experienced WebSphere Portal administrator with experience with IBM Workplace Services Express or IBM Workplace Collaboration Services. We start by introducing you to the Lists portlets.
Lists are a new component introduced in Workplace Services Express 2.0 for sharing form-based information. Users can add items to a List through a form or can page through sortable summary views of all the items currently in the List. Workplace Services Express has a lot of predefined Lists out-of-the-box to get you started right way, including Agenda, Announcements, Meeting Minutes, Directions, and more (18 in total). In addition to the predefined Lists, any List can be selected as a starting point and then customized by adding new form fields or views and by changing other customizable features. Lists represent a flexible component for quickly gathering and sharing information with users without the overhead of customized development.
Figure 1. Announcements list
As you can see from figure 1, the List summary view has an icon and description for describing the List contents. There are buttons for creating new items in the List as well as deleting items from the List. There is also an Actions button drop-down letting you search through the List contents and letting you use a convenient filtering function that allows you to select criteria from the a drop-down List for each column. Both searching and filtering give you a virtual view of the List that contains only the items that match the specified criteria.
Figure 2. All items view
Lists can have multiple summary views that selectively display which fields (that is, columns) to show as part of the view. The All items view shown in figure 2 shows the Description and Author fields of the List items, but not the Last modified field. You can create as many views as you like which will be available from the Show drop-down list.
In some cases, you may only want to give a set of users a specific type of access to a List. For example, you may only want one administrator to customize the fields, but you want other users to have the capability to add items to a List, and yet other users to have read-only access to the items in the List. Thus, the List portlet surfaces four different roles associated with user interaction. By default, users have no access, but you can selectively give users access by adding them to one of the following roles: Manager, Editor, Author, or Reader. Managers can change any aspect of the Lists portlets including changing the schema of the form or roles of other users in the List. Editors and Authors cannot customize the Lists portlets, but they can add and delete items and create their own summary views of the List. Editors can modify any item in the List, whereas Authors are restricted to modifying only their own items. Readers have no access other than to view items in the List. For a complete table of roles and functions available, refer to the Workplace Services Express InfoCenter.
As we discussed earlier, Lists behave differently depending on whether they are on a portal page or within a Workplace application. This article discusses the differences between the two later, but starts by focusing on the common aspects for customizing a List in either environment.
You can add Lists to any portal page just like any other portlet. However, in Workplace Services Express 2.0, all the predefined Lists portlets are automatically added to the slide-out palette to make it extremely easy to add a List to a page. You can drag and drop a portlet onto a page.
Figure 3. Lists portlets
After you add a List to a portal page, configure it by clicking the Edit button (a pencil icon) in the upper-right corner of the portlet title bar. The first options available to customize are in the Properties tab. Here you can customize the generic information about the List including the title, which is shown on the portlet title bar. You can also change the description or select to not show it at all. You can even change the icon shown on the List.
Figure 4. Properties tab
The next tab is the Fields tab, which allows you to define the form and fields associated with the List items. You can select from a wide range of 16 different field types, including input fields (plain text, time/date picker, attachment); computed fields (item author, creation date); and design fields (arbitrary rich text). Each field type has its own set of properties and unique characteristics. For example, you can make a plain text field work with Click-2-Action as a source of data. Drag and drop fields to customize the layout of the form using the three columns provided. Lastly, you can preview your form by clicking the Preview button. For a full list of field types, refer to the Workplace Services Express InfoCenter.
Figure 5. Fields tab
The next tab is the Views tab, which allows you to define and order the summary views associated with the List. By default, all Lists have an All items view. A user can create new views by clicking the New button and giving the view a unique name. Additionally, a view can be made public (everyone will see the view) or private (only the user will see the view). For table views, you can select from all the available columns, rearrange the order of those columns, and even rename the columns only for that particular view.
Figure 6. Views tab
In addition to the table view used throughout this article, you can also select from a pie or bar chart view. This allows you to create simple charts to show the results of a survey for example.
NOTE: The charting capability is somewhat limited in that you can only plot out the unique values of one field per view. Also, you can use only certain field types in a charting view. They include plain text, on-off control, single item selection, date picker, time picker, name, and URL fields. The other field types are not shown from the drop-down list of field selections. However, you can create multiple charting views within a single List portlet and intermix charting views with standard table views. Also notice that in charting views the Actions button is replaced with the Refresh button because you cannot search or filter in a charting view.
Figure 7. Chart examples
We intentionally skipped over a few configuration options such as the Access Level tab because these features behave differently when the List is on a plain portal page versus a Workplace application. The following sections will describe the differences in each environment.
Lists on a portal page behave slightly differently from Lists in Workplace applications because in a Workplace application, features such as provisioning, roles, and searching are integrated into the overall application. In a portal page, some of these features are not available, while others need to be manually configured.
The first major difference is how a List is deployed. Only portal administrators can deploy and manage a List portlet. You can accomplish this quickly by adding users to the wpsadmins group within WebSphere Portal. First, open the Administration section from the tool bar, and then click Users and Groups. Perform a search for wpsadmins by selecting cn from the Search on drop-down as shown in the following diagram.
Figure 8. Managing users and groups
Select wpsadmins, and then click Add member to add users. Use this procedure with caution because every user you add to this group automatically becomes a portal administrator, allowing him or her to do anything in WebSphere Portal.
Before you can make a List available to users within WebSphere Portal, you have to explicitly give them access to the Lists portlets. This is in addition to assigning users a role within the List (as we describe later). There are a few ways to accomplish this, but this article describes one such approach.
Again, open the Administration section from the tool bar and this time select Resource Permissions. Select Portlets and search for the particular List you want to assign permissions for (in our example, it's Vacations). Select Assign Access, and then click the Edit Role icon for Privileged User.
Figure 9. Assigning resource permissions
Lastly, you need to add users or user groups to the Privileged User role by clicking Add and using the search interface. If you want all users to have at least the ability to access the portlet, simply add the "all authenticated portal users? user group.
NOTE: This does not give them access to view the items in a particular List.
You cannot add any items to the List until it is configured. Configuring the List is simple: click the Edit button in the portlet title bar, and then configure all the options (properties, fields, views) as described earlier. Additionally, assign users a role within the List in the Access Levels tab. (This tab is only available on portal pages.) Select the role you want to add users to, and then using the people picker dialog boxes, selectively add users. Keep in mind that you can only add portal administrators to the List Manager role. One current limitation is that you can add only individual users to the roles, not select user groups.
Figure 10. Access Levels tab
If you do not assign users a role within the List (even the ?Reader? role), they receive the error message, "You are not authorized to view this content," when trying to access portlet.
When configuring a List on a plain portal page, four portal user groups are created for each List. When adding users to roles, you are actually adding users to these portal user groups. A common issue encountered while trying to configure a List portlet is the inability to create user groups within WebSphere Portal. This can happen, for example, if you have configured Workplace Services Express to use an LDAP server without enabling the ability to create groups in that LDAP server. Unfortunately, you do not receive an explicit error message if this error condition occurs. Instead, the portlet configuration does not complete, and you receive the standard configuration message, "This list needs to be configured first before being used."
Lastly, cleaning up a List portlet takes special care on portal pages. You can?t just remove a portlet from the page because this causes resource leaks. Specifically, the user groups and the back-end item database for that List are not cleaned up. To delete a List, you must first click the Edit button for configuration mode. Then you must click the Delete button at the bottom of the portlet (this Delete button is only available to portlets on portal pages). This causes the cleanup of all resources associated with the List and puts the portlet back in non-configured mode. You can then either reconfigure the portlet or remove it from the page safely.
Lists added to Workplace applications take full advantage of the Workplace programming model. They are directly integrated into the provisioning, searching, and other service capabilities associated with IBM Workplace Services Express. For example, the steps outlined previously for deploying a List portlet do not apply in a Workplace application. When you add a List from the slide-out palette to a Workplace application for example, the portlet is automatically configured according to the rules of the Workplace application and is ready to use. You also do not need to explicitly assign permissions for users, and users do not need administrative access to customize the List. Instead, the List permissions are governed by the roles defined in the Workplace application (for example, Moderators can customize a List). Also, you do not need to explicitly clean up the List by clicking Delete as was described earlier.
Just as in portal pages, List Managers can customize Lists. Not all Moderators though are portal administrators, so do not have the Edit button on the portlet title bar. In Workplace applications, Lists provide a Customize option in the Actions button drop-down. List Managers can use this button to customize the List, and Editors and Authors can use it to create private summary views.
Lists in applications are fully integrated with the Workplace search capabilities through the Search Center. As part of configuring the List, you must specify the field that will be used as the subject column to show the results of a List search. This is available in the Fields tab. When you select a List search result, it automatically opens the right Workplace application and goes to the item in the appropriate List.
List in a Workplace application conforms to the roles defined in the application. For example, the Marketing Team team space has two predefined roles: Moderators and Contributors. By default, the Moderator role is mapped to the List Manager role and the Contributor role is mapped to the List Author role. This means that all users added to the Moderator role of the application will automatically become Managers of the Lists in that application. Similarly, all users added to the Contributor role of the application become List Authors. The mapping between application roles and List roles is completely configurable for each List in the Workplace application using the standard Workplace application customization features. You can quickly change these role mappings by selecting Edit from the Actions button drop-down on the tool bar and then selecting the Roles tab. For more information regarding Workplace application customization, refer to the Workplace Services Express InfoCenter.
Adding a List to a Workplace application (for example, dragging from the slide-out palette) takes some special attention to make sure the roles associated with the List are configured completely. By default, any other user in the Workplace application is not assigned access to the new List component and receives the message, "You are not authorized to view this content," when he or she enters the application until the role configuration is completed.
You complete the role configuration using the same procedure as described previously. Select Edit from the Actions button drop-down, and the go to the Roles tab.
Figure 11. Roles tab
You need to assign the List role for each of the available application roles, in this case, Moderators and Contributors. This is a little deceptive because from the UI it looks as though the roles have already been set, but this is not the case. You must explicitly set the role as shown in figure 12 for each Workplace application role.
Figure 12. Setting roles
Also, notice that the Lists that come pre-configured with the Workplace application are all called List Component, while the new Lists that were added (in this case, Vacations) are named with the title of the List. This is a current limitation and may be a source of confusion.
Lists in Workplace Services Express 2.0 represent a new, flexible component for sharing and collaborating on form-based information. Instead of programmatically developing custom solutions, you can deploy a List and quickly customize it to suit various needs. You have seen that Lists behave differently in portal pages versus Workplace applications and team spaces, which may lead to some confusion. By keeping in mind the hints and instructions presented throughout this article, your experience using Lists will be both simple and productive.
NOTE: At the time of writing this article, a List fix pack was being readied and posted to the external support site to fix a few issues related to List roles within Workplace applications and should be available shortly.
- For more information about IBM Workplace Services Express, visit the product page.
- Visit the IBM Workplace Services Express 2.0 InfoCenter for information about installation and configuration.
- Learn more about IBM Workplace from the IBM Workplace resource center.
- Read the developerWorks article, "Developing and deploying collaboration applications with IBM Workplace Services Express."
- Get involved in the developerWorks community by participating in developerWorks blogs.
- Browse for books on these and other technical topics.
Michael Wanderski is an advisory software engineer at the IBM Raleigh Lab working in the Pervasive Computing Division. He is currently working on the WebSphere Everyplace Access product. You can contact Michael at email@example.com.