41 Integrating Worklists

This chapter describes how to integrate worklists into your application. Worklists enable users to view and take action on all tasks and notifications from a BPEL (Business Process Execution Language) server all in one place.

This chapter includes the following topics:

For information about managing and using worklists, see:

41.1 Introduction to Worklists

Worklists enable you to show Business Process Execution Language (BPEL) Worklist items assigned to the currently authenticated user. The BPEL Worklist items are open BPEL tasks from one or more BPEL Worklist Repositories to which your application is connected. The Worklist displays BPEL Worklist items that are a result of a task invoked as part of a BPEL Workflow process, or are a result of a message being sent to the Worklist channel on the Oracle User Messaging Service.

This section contains the following subsections:

41.1.1 Understanding Worklists

Worklists provide a personal, at-a-glance view of business processes that require your users' attention. These can include a request for document review or other types of business processes that come directly from your enterprise applications.

Worklist items come from a variety of sources. Some worklist items are kicked off by events that are associated with an externally defined workflow. A workflow maps the route an item follows once an event kicks off. This type of workflow is defined in a worklist BPEL server, such as Oracle BPM Worklist.

Messages, alerts, and notifications might also come from the User Messaging Service (UMS). The Worklist task flow includes a control for accessing messaging preferences on this server. Use these controls to specify the channels over which to receive Oracle User Messaging Service messages and to define messaging filters.

41.1.2 Requirements for Worklists

To use worklists, you must have a BPEL server installed. For information on installing BPEL for worklists, see the "Back-End Requirements for Worklists" in the Installation Guide for Oracle WebCenter Portal.

For a worklist to properly function, it must reside on a secured page, as it uses the currently authenticated user to access the BPEL server. If the page or application that contains the worklist is not secured, you will encounter exception errors.

41.1.3 What Happens at Runtime

At runtime, the Worklist task flow fetches latest worklist workflow items from BPEL workflows configured in the BPEL server. For more information, see the "Exploring Your Worklists" chapter in Using Oracle WebCenter Portal.

To get a list of the items assigned to a user, worklists uses the WebService access function of the public BPM client API. Worklists uses SAML authentication to authorize the logged-in user to fetch the list of latest items from the BPEL repository. Worklists fetches the 25 most recent items for each worklist connection and determines the order of these items by using a predicate on the TaskQueryService API. For more information, see "Building a Custom Worklist Client" in Developer's Guide for Oracle SOA Suite.

Figure 41-1 shows worklists at runtime.

Figure 41-1 Worklists at Runtime

Description of Figure 41-1 follows
Description of ''Figure 41-1 Worklists at Runtime''

41.2 Roadmap - Configuring Worklists for Portal Framework Applications

Figure 41-2 and Table 41-1 in this section provide an overview of the prerequisites and tasks required to get worklists working in Portal Framework applications.

Figure 41-2 Configuring Worklists for Portal Framework Applications

Description of Figure 41-2 follows Install WebCenter Portal and the SOA Suite Integrate worklists in your application Create a Worklist connection Add the Worklist task flow to a page in JDeveloper JDeveloper Fusion Middleware Control WLST WLS Admin Console Deploy additional BPEL workflows Configure BPEL server to use the same identity store as the application Configure single sign-on Add/Modify connection parameters JDeveloper Fusion Middleware Control WLST
Description of ''Figure 41-2 Configuring Worklists for Portal Framework Applications''

Table 41-1 Configuring the Worklist for Portal Framework Applications

Actor Task Sub-Task

Administrator

1. Install Oracle WebCenter Portal and the Oracle SOA Suite

 

Developer

2. Integrate worklist in your Portal Framework application

2.a Create a Worklist connection

2.b Add the Worklist task flow to a page in JDeveloper

Developer/Administrator

3. Deploy the application using one of the following tools:

 

Administrator

4. Deploy additional BPEL workflows using the Oracle BPM Worklist application (see "Deploying and Managing SOA Composite Applications" in Administrator's Guide for Oracle SOA Suite and Oracle Business Process Management Suite)

 

Administrator

5. (Optional): Configure BPEL server to use same identity store as the application

 

Administrator

6. (Optional): Secure the connection to the BPEL server

6.a Configure single sign-on

6.b Configure WS-Security

6.c Configure SSL

Developer/Administrator

7. (Optional): Add/modify connection parameters using one of the following tools:

 

End User

8. Test that worklists functionality is working

8.a Log in to the Portal Framework application

8.b Generate a worklist event

8.c Verify event information displays in the task flow


41.3 Basic Configuration for Worklists

This section describes how to set up a connection for worklists and add the task flow to your Portal Framework application.

This section contains the following subsections:

41.3.1 Setting up Connections for Worklists

To use worklists, you must establish a connection to one or more BPEL servers. This section describes these connections and how to create them in a Portal Framework application.

41.3.1.1 Worklist Connections

Worklist rely on a BPEL server. After you create a connection using the Create Worklist Connection dialog, the connection is registered in your application's connections.xml and referenced in your application's adf-config.xml. You can see the connections to your BPEL Worklist Repositories in the Application Resources pane.

Note:

While you can set up the connections to back-end servers at design time in Oracle JDeveloper, you can later add, delete, or modify connections in your deployed environment using Fusion Middleware Control. For more information, see the Administering Oracle WebCenter Portal.

41.3.1.2 How to Set Up Connections for Worklists

You can add the Worklist task flow to your application at design time or at runtime. Before you can run the task flow, you must create a connection from your application to a BPEL server.

To set up the connection for worklists:

  1. In the Application Resources panel for your application, right-click Connections, then choose New Connection> Worklist.

  2. In the Create Worklist Connection dialog, choose whether to create the connection in the Application Resources (only the current application can use this connection) or IDE Connections (other applications you create can use the same connection).

  3. In the Connection Name field, enter a name for your connection. This name will be used as the display name of the Worklist server.

    Note:

    At runtime, when users view their worklist items, they can choose to group the items by "Worklist Server." The Worklist Server name used is the name you enter in the Connection Name field.
  4. In the URL field, enter the location of your BPEL/SOA server, such as http://bpel.example.com. This is the URL for the managed server running the SOA processes.

  5. Select the SAML Token Policy URI to use for this server (Figure 41-3).

    SAML (Security Assertion Markup Language) is an XML-based standard for passing security tokens defining authentication and authorization rights. An attesting entity (that already has trust relationship with the receiver) vouches for the verification of the subject by method called sender-vouches. Options available are:

    • SAML Token Client Policy (oracle/wss10_saml_token_client_policy) - Select to verify your basic configuration without any additional security. This is the default setting.

    • SAML Token With Message Client Policy (oracle/wss10_saml_token_with_message_protection_client_policy) - Select to increase the security using SAML-based BPEL Web Services. If selected, you must configure keys stores both in your Portal Framework application and in the BPEL application. For more information about this configuration, see the "Configuring Policies" section in the Security and Administrator's Guide for Web Services.

      Figure 41-3 Create Worklist Connection Dialog

      Description of Figure 41-3 follows
      Description of ''Figure 41-3 Create Worklist Connection Dialog ''

  6. To enable advanced settings, select Advanced:

    • In the Link URL field, specify the URL used to link to the BPEL server. Only required if it is different to the BPEL SOAP URL, for example, when SSO or HTTPS is configured. Use the format: protocol://host:port.

      For example, http://mySSO.host.com:7777.

      This URL is used to build SSO- or HTTPS-enabled URL links to worklist items, whereas the URL property for worklists is used to access the BPEL Task Query Service, which for performance reasons does not need to go through HTTPS or an SSO server.

    • In the Recipient Key Alias field, enter the recipient key alias to be used for message protected SAML policy authentication. Only required when the BPEL server connection is using a SAML token policy for authentication and the application is using multiple BPEL server connections. For information about working with recipient key alias and WS-security, see the chapter "Configuring WS-Security" in Administering Oracle WebCenter Portal.

  7. Click Test Connection to validate the URL.

  8. Click OK.

    The new connection displays in the Application Resources panel under Connections.

41.3.2 Adding Worklists Functionality at Design Time

This section describes the Worklist task flow and how to add it to your application.

41.3.2.1 Worklist Task Flow

The Worklist task flow is found in the WebCenter Portal - Services Catalog in the Resource Palette.

41.3.2.2 How to Add the Worklists Functionality to your Application

You can add worklists functionality to your application before or after you have created your connection. However, you must set up your connection before you run the application.

To add the Worklist task flow to your application:

  1. Follow the steps in Section 4.2.1, "How to Prepare Your Application to Consume Tools and Services" to implement security and create a customizable page in your application.

  2. Open the page where you wish to add the Worklist task flow.

  3. In the Resource Palette, in the My Catalogs pane, open the WebCenter Portal - Services Catalog, then open the Task Flows folder.

  4. Drag the Worklist task flow onto the desired region on the page, then choose Region from the pop-up list. The task flow displays on the page. For example, in the Source view, you will see Figure 41-4.

    Figure 41-4 Worklist Task Flow in the Page Source

    Description of Figure 41-4 follows
    Description of ''Figure 41-4 Worklist Task Flow in the Page Source''

  5. Save your project, then run your page to a browser. The worklist displays in your browser.

41.3.3 Setting Security for Worklists

Worklists display the tasks for the currently authenticated user. So, for users to store and retrieve worklist tasks on the BPEL server from your application, you must set up security on the application (as described in Section 4.2.1.1, "Implementing Security for Tools and Services"). The user names need to either exist in a shared user directory (LDAP), or set up similarly (same user name) on both the Portal Framework application and the BPEL Server. For example, if the user rsmith needs to use worklists in your Portal Framework application to store and retrieve tasks from the BPEL server, then you must ensure that the user rsmith exists on both the BPEL server and within your application.

To enable users to perform actions on assigned worklist tasks, you can configure SSO. If you do not configure SSO, the users will be prompted to log into the Worklist Task Details page on the BPEL server. For more information, see the Securing Applications with Oracle Platform Security Services.

Only authenticated users can view worklist tasks on the BPEL server to which they have permissions to view. If the application end user does not supply appropriate credentials, or if the page containing the worklist is not secured, she will not see any worklist items stored on the BPEL server and exception errors may occur.

41.4 Advanced Information for Worklists

Worklists collate all the worklist items for the authenticated user from all connections in your application defined for the worklists. You can use the create connection method described in Section 41.3.1.2, "How to Set Up Connections for Worklists" to create additional connections, or right-click the connection name in the Application Resources list and choose Delete to remove a connection.