Troubleshooting Issues with Notifications

19-2 Oracle Fusion Middleware Administrators Guide for Oracle WebCenter your application. For evaluation purposes and iterative development, this domain offers the quickest and easiest way to explore WebCenter Personalization. For more information about WebCenter Personalization architecture and services, see Personalizing WebCenter Applications in Oracle Fusion Middleware Developers Guide for Oracle WebCenter.

19.2 WebCenter Personalization Prerequisites

This section describes the system requirements and dependencies for WebCenter Personalization in the following sections: ■ Section 19.2.1, WebCenter Personalization Installation Requirements ■ Section 19.2.2, WebCenter Personalization Configuration Requirements ■ Section 19.2.3, WebCenter Personalization Security ■ Section 19.2.4, WebCenter Personalization Limitations ■ Section 19.2.5, WebCenter Personalization Configuration Options

19.2.1 WebCenter Personalization Installation Requirements

If you are using the CMIS or Activity Graph data providers, or the People Connection locator within a Personalization Conductor scenario, then WebCenter Spaces must be installed. For High Availability environments only, Coherence is also required.

19.2.2 WebCenter Personalization Configuration Requirements

If you are using the CMIS provider, Activity Graph provider, PeopleConnections locator, or custom providers you must configure them as shown in Section 19.4, Configuring Providers. If you are using Content Presenter to present content in WebCenter Spaces or in your WebCenter Portal application, then you must also configure Content Presenter to display the results of your scenarios as described in Section 19.6, Configuring Content Presenter. WebCenter Personalization relies on WebCenter Trust Services to provide single sign-on SSO between different managed servers within the WebCenter domain. Trust Services must be configured using the WLST scripts configureTrustWCPS.py and configureConnectionsWCPS.py provided in the user_projectsapplicationswc_domain directory. For JDeveloper’s integrated domain, only a single script configureWCPS.py located in the DefaultDomainscrpts-wcps directory is used. For more information about configuring the WebCenter Trust Services and single sign-on using this script see Section 19.7, Configuring Single Sign-on.

19.2.3 WebCenter Personalization Security

WebCenter Personalization is compatible with whatever source of user authentication services are configured within the WLS security realm. That is, it can use the default identity store and policy and credential store for the domain. If you are using the People Connections locator or Activity Graph data providers, users must also be configured as WebCenter Spaces users. WebCenter Personalization REST services are accessed though a pre-configured WebCenter Personalization Web application that requires authenticated access for all Managing WebCenter Personalization 19-3 resources all URIs, with the exception of the resourceIndex. You can modify these constraints to provide either less security to execute scenarios where anonymous access is needed, or more security to prevent the ability to create new scenarios. For information about modifying the default security settings, see Section 19.8, Overriding the Default Security Settings. WebCenter Trust Services provides single sign-on for Personalization REST calls. This requires that the WLS TrustServicesIdentityAsserter is configured it is not pre-configured. You can do this manually using the WLS Console or with the provided WLST scripts configureTrustWCPS.py and configureConnectionsWCPS.py located in the user_projectsapplicationswc_domain directory. For JDeveloper’s integrated domain, a single script configureWCPS.py located in the DefaultDomainscrpts-wcps directory is used. You can also optionally secure your WebCenter Portal application’s connection to the Personalization server and Personalization providers with single sign-on. For more information about configuring single sign-on, see section Section 19.7, Configuring Single Sign-on. Access to Property Service data can also be limited by an application using a filter IPropertyPermission to pre-authorize access to property data . Scenarios can use an out-of-the-box function library supporting basic Role evaluation and testing to authorize access to scenarios.

19.2.4 WebCenter Personalization Limitations

By default, WebCenter Personalization uses a managed server-scoped cache, meaning any changes made to cached data outside the managed server will not be seen by additional installations of WebCenter Personalization. For clustered multiple deployments of WebCenter Personalization, Coherence may be configured for a cluster-aware cache.

19.2.5 WebCenter Personalization Configuration Options

This section describes the out-of-the-box providers and other optional extensions to WebCenter Personalization, and the configuration required to integrate them into your WebCenter Personalization project. The out-of-the-box WebCenter Personalization data providers allow you to write scenarios and access profile data based on existing WebCenter services. These WebCenter services expose their data via RESTful web services. The Personalization data providers act as REST clients of these web services and make it easy to author scenarios within JDeveloper based on these external data sources. You can also provide your own data provider and property locator implementations to integrate your own sources of external data. CMIS Provider The CMIS provider is an out-of-the-box provider that you can optionally use as a data source in your Personalization project. WebCenter content services are exposed using the CMIS Content Management Interoperability Services standard. The CMIS REST web service runs on the WC_Spaces server and provides access based on separate configuration choices to the Oracle Content Server. If a WebCenter Personalization user is also a WebCenter Spaces user, access to user content stored through the Spaces application is possible from a scenario. For more information about the Oracle Content Server, see Chapter 11, Managing Content 19-4 Oracle Fusion Middleware Administrators Guide for Oracle WebCenter Repositories. For more information about configuring the CMIS provider, see Section 19.4.2, Configuring the CMIS Provider. Activity Graph Data Provider The Activity Graph data provider is an out-of-the-box provider that you can optionally use as a data source in your Personalization project. WebCenter activity stream information is exposed through the Activity Graph web service. The Activity Graph REST web service runs on the WC_Spaces server and provides access to activity stream based recommendations as formed by the activity graph. If a WebCenter Personalization user is also a WebCenter Spaces user, access to activity related recommendations for Spaces content-types is possible from a scenario. For more information about the Activity Graph service, see Chapter 12, Managing the Activity Graph Service. For more information about configuring the Activity Graph provider, see Section 19.4.3, Configuring the Activity Graph Provider. Oracle People Connections Locator The People Connections locator is a locator that you can optionally use as a data source in your Personalization project. WebCenter People Connections information is exposed via the People web service. The PC REST web service runs on the WC_Spaces server and provides access to social profile data as created in the context of WebCenter Spaces. If a WebCenter Personalization user is also a WebCenter Spaces user, access to People profile data is possible from a scenario. For more information about the People Connections service, see the chapter on Integrating the People Connections Service in the Oracle Fusion Middleware Developers Guide for Oracle WebCenter. Unlike the other out-of-the-box data providers, the People Connection web service is accessed through the general purpose Property Service data provider using the IPropertyLocator extension interface. For more information about configuring the People Connections provider, see Section 19.4.4, Configuring the Oracle People Connections Locator.

19.3 Configuring the WebCenter OPSS Trust Service

WebCenter Personalization leverages a new feature from OPSS Oracle Platform Security Services for single-sign-on. Enabling this feature by following the configuration steps described here, is required in all but the simplest Personalization use cases. The OPSS Trust Service does not need to be configured when: ■ Directly interacting with the Conductor and Property service from a REST client ■ The Conductor and Property Service are being used by WebCenter Personalization client libraries from a custom JEE Web application deployed in the same domain as WebCenter Personalization, if JSessionId has been configured for both Web applications note that there will be many exceptions logged making debugging difficult The OPSS Trust Service must be configured when: ■ Any production deployment of WebCenter Personalization ■ Any Personalization scenarios require the out-of-the-box data providers Activity Graph, CMIS, and People Connections Locator ■ The Conductor and Property Service are being used by WebCenter Personalization client libraries from a custom JEE Web application deployed in the same domain as WebCenter Personalization Managing WebCenter Personalization 19-5 ■ Cross-domain trust i.e., integrated domain connection configured to use the WC_domain CMIS provider is required This section contains the following subsections: ■ Section 19.3.1, Configuring the Trust Service in the WebCenter Domain ■ Section 19.3.2, Configuring the Trust Service in the Integrated WLS Domain ■ Section 19.3.3, Configuring Cross-Domain Trust

19.3.1 Configuring the Trust Service in the WebCenter Domain

The default WebCenter installation includes the WebCenter Personalization domain extension template, which installs two WLST python scripts configureTrustWCPS.py and configureConnectionsWCPS.py, in the domain home: oracleuser_projectsapplicationswc_domainscripts These scripts and associated configureWCPS.properties file contain usage instructions. Note that these are sample scripts, and that before running the scripts, you must edit the properties file and, at a minimum, specify the ocs.server name typically the Oracle Content Server, the spaces.server.host name, and the fmwconfig.location. These values are unique to each WebCenter installation and must be edited. Other values may also need to be changed according to the local environment the machine port numbers, for example, may be different. The configureConnectionsWCPS.py script sets up the default WebCenter Personalization connection information for you i.e., connection information for Activity Graph, CMIS, and People Connections. The script relies on the WCPS.py library, which is only installed on the WebCenter domain and not in the integrated WLS domain. You can, however, run configureConnectionsWCPS.py in the WebCenter domain and point it using a t3 URL to an integrated WLS domain. You must use the oracleas11gr1wccommonbinwlst.sh command file that sets up environment variables correctly for as11gr1wc scripts. After running the scripts, restart all servers in the domain. Testing the Configuration To see Trust Service single sign-on in operation, you must be calling the Conductor or Property Service from a custom JEE Web application using the WebCenter Personalization client libraries, or be executing a scenario that uses a WebCenter Personalization connection such as the Activity Graph or CMIS data providers, or accessing a People Connections property using the People Connections locator. When doing any of the above, you should see the following default log entry in WC_Utilities-diagnostic.log: [2010-11-10T07:30:40.362-08:00] [WC_Utilities] [NOTIFICATION] [] [oracle.jps.trust] [tid: [ACTIVE].ExecuteThread: 3 for queue: weblogic.kernel.Default self-tuning] [ecid: 0000IkqQG4NBh49LJeCCyf1CqfXw000008,0] [APP: wcps-services11.1.1.4.0] Token issue operation Caution: the Trust Service configuration set up by configureTrustWCPS.py should not be applied remotely. The script should only be run from the WebCenter wc_domain.