9 Using Personalization for WebCenter Portal

WebCenter Portal's Personalization provides a dynamically derived user experience that can be applied to any Oracle WebCenter Portal: Spaces object that can be used in conjunction with Expression Language (EL) expressions. This chapter provides an overview of how the Personalization engine can be used to determine which WebCenter Portal: Spaces objects are presented to the user and how these objects are presented based on the outcome of a Personalization scenario.

This chapter includes the following sections:

9.1 Introduction to Personalization

WebCenter Portal's Personalization provides a mechanism with which to vary the user experience based on dynamically evaluated criteria defined in a Personalization scenario. The scenario evaluates defined sources of input data, and generates a decision. The results of that decision or outcome can be applied in WebCenter Portal: Spaces using Expression Language (EL) expressions.

To use Personalization for WebCenter Portal in WebCenter Portal: Spaces, you first need to create a scenario in a WebCenter Portal: Framework application. You then use ELs to execute and return the results of the scenario, and modify the user experience accordingly in WebCenter Portal: Spaces. For information about how to create Personalization scenarios, see "Personalizing WebCenter Portal Applications" in the Oracle Fusion Middleware Developer's Guide for Oracle WebCenter Portal. The Personalization ELs used to run a scenario are cataloged in Section B.4.11, "EL Expressions Relevant to the Personalization Conductor."

Once you've set up your scenario, you can use ELs in WebCenter Portal: Spaces to present targeted content or shape the way content is presented based on information about the user. For example, you can use a Personalization scenario to determine a user's role within an enterprise, and based on that selectively show content for that role. You can also tailor the presentation (such as page templates, page styles, skins, Resource Catalogs, and so on) for the user.

9.2 Driving Content Using Personalization

WebCenter Portal's Personalization can deliver targeted content based on both user and application context. Personalization, for example, can return content or change application flow based on information about a user in a Human Resources database, targeting the WebCenter Portal: Spaces experience for that specific user.

You can define the content sources, or data providers, that are used to evaluate or provide data for a scenario. The default data provider for Personalization is the Oracle WebCenter Content Server, but a data provider for Activity Graph and a locator for People Connections is also available out of the box. You can also define your own data providers for other data sources. For more information about data providers, see "Personalization Providers" in the Oracle Fusion Middleware Developer's Guide for Oracle WebCenter Portal.

You can create a simple example of using Personalization to drive content based on information about the user by creating a scenario that returns “true” if the employee hire date is within the last two months (see "Authoring Personalized Scenarios in JDeveloper" in the Oracle Fusion Middleware Developer's Guide for Oracle WebCenter Portal to learn how to create a Personalization scenario). After creating the scenario:

  1. Log in as an administrator in WebCenter Portal: Spaces.

  2. Create a page for new hires, naming it New Hire.

  3. Edit the navigation model for the site, and add a new navigation link to the New Hire page.

  4. Select New Hire and click the Edit (Pencil) icon.

    Figure 9-1 Navigation Model

    Description of Figure 9-1 follows
    Description of "Figure 9-1 Navigation Model"

  5. For the Visible attribute, open the Expression Editor, select Type a value or expression and enter:

    #{p13nContext.conductor.default.namespaces['p13nApp'].scenario['NewHire'].results}
    

    Where p13nApp is the name of the WebCenter Portal application containing the scenario, and NewHire is the name of the scenario. This will execute the scenario and return the results (True or False in this case). If the user is a new hire (True) based on the results of the scenario, then the menu item will display when the user logs in.

    Figure 9-2 Expression Editor

    Description of Figure 9-2 follows
    Description of "Figure 9-2 Expression Editor"

9.3 Driving Portal Look and Feel Using Personalization

As well as targeting content to the user, you can also use Personalization and Personalization ELs to select the page templates, page styles, skins, and navigation flow within which that content is presented.