Oracle Technology Network

Integrating WebCenter Social Services with Oracle WebCenter Interaction

Purpose

This tutorial covers the steps required to display WebCenter taskflows created with the Oracle JSF Portlet Bridge as portlets in Oracle WebCenter Interaction for a Windows environment.

Time to Complete

Approximately 1 hour

Overview

Oracle Application Development Framework (ADF) is the most productive platform for building Web applications that interact with Oracle Applications or data. Oracle WebCenter offers a wealth of Social Services which are available to developers as ADF task flows. These task flows can be made available to other types of application frameworks as portlets. Oracle WebCenter Interaction (WCI) can consume these task flows via Oracle WebCenter Ensemble. This tutorial describes in detail how to surface WebCenter Social Services as portlets in Oracle WebCenter Interaction.

Scenario

The developers at your company have created an application using the JSF Portlet Bridge and WebCenter Social Services to display two taskflows as portlets - one shows documents on a filesystem and the other is a simple mail interface. In both cases the content is the same for all users. You are the Administrator and you have been tasked with surfacing these taskflows in Oracle WebCenter Interaction so users can add them to their My Pages or Community pages as portlets. WebCenter taskflows cannot be consumed directly by Oracle WebCenter Interaction. So you will configure pagelets in Oracle WebCenter Ensemble that display the taskflows then surface those pagelets in WebCenter Interaction as portlets.

Software and Hardware Requirements

The following is a list of software requirements:

Prerequisites

Before starting this tutorial, you should:

1. Have created your WebCenter application that contains the mail and documents taskflows. See the Exposing WebCenter Services Task Flows as WSRP Portlets and Ensemble Pagelets white paper. Also see Further Considerations at the end of this tutorial.
2. Have the pagelet producer endpoint URL for each of the task flows.
3. Start all Oracle WebCenter Ensemble and Oracle WebCenter Interaction services.

Configure Single Sign-On (SSO)


To configure Oracle WebCenter Ensemble to automatically log users in to Oracle WebCenter Interaction, perform the following steps:

Deploy the Portal SSO Integration Application


1.

Deploy the portal.war file on the Apache server by copying the portal.war file to your CATALINA_HOME\webapps\ directory. The portal.war file is located in Ensemble_Install_dir\ensembleproxy\version\integration\alisso\.

For example,

copy C:\bea\alui\ensembleproxy\10.3.0\integration\alisso\portal.war

to C:\Program Files\Apache Software Foundation\Tomcat5.5\webapps\

Note: Although you can use various brands of Web servers to host the Oracle WebCenter Interaction portal, you must use Apache Tomcat to host the portal.war file.

 

2.

Open Services and restart the Apache Tomcat service if it is already running. If it is not running, start the service.

Show Screenshot for Step

Note: You can also use Tomcat Manager to deploy the portal.war.


Enable Remember Me Cookies for Oracle WebCenter Interaction


1.

On the machine on which Oracle WebCenter Interaction is installed, navigate to WCI_Install_Dir\settings\portal\. For examle,

C:\bea\alui\settings\portal.

 

2.

Edit portalconfig.xml and set the AllowAutoConnect node to 1.

Show Screenshot for Step


3.

Restart the Oracle WebCenter Interaction services. (To restart everything you would restart BEA AL Notification Service, BEA ALI API Service, BEA ALI Automation Service, BEA ALI Content Upload Service, BEA ALI Document Repository Service, BEA ALI LDAP Directory, BEA ALI Logger, BEA ALI Remote Portlet Service, BEA ALI Search Cluster Manager, BEA ALI Search.)

Note: Before performing these steps, determine the security impact that enabling Remember Me cookies might have on your portal environment.


Configure Ensemble Settings in Configuration Manager


1.

Open Configuration Manager by clicking Start > Programs > Oracle > Configuration Manager and log in using your administrator username and password. For example, administrator/admin. In the left navigation pane, expand Ensemble. Here you see a list of links for changing Ensemble settings.

Show Screenshot for Step

 

2.

Click ALUI Directory and ensure Authentication provider is set to ALI and all the Connection Information settings are correct. If you change anything click Save, otherwise continue with the next step.

Show Screenshot for Step


3.

Before you perform the next step you need to find a value from a database table. Connect to your Oracle WebCenter Interaction database. For example, Start - Programs - Oracle Database 10g Express Edition - Go to Database Home Page. And log in as the WebCenter Interaction user, for example, owidbuser/admin.

View the ptserverconfig table and find the row where the Name equals login token root key. Make a note of the number in the Value column. This may be a negative number, if so, note the negative sign as you will need to enter this in Configuration Manager in the next step.

Show Screenshot for Step

Note: The number in your table may differ from what you see in the screenshot above.


4.

Back in the WebCenter Configuration Manager, click ALUI Security Login Tokens and ensure Default token type is set to ALUI.

Click Change value to enter the Message authentication code seed value. Enter the value from the ptserverconfig table in the previous step twice and click Ok. Back on the ALUI Security Login Tokens page, click Save.

Show Screenshot for Step


5.

Click SSO Login and select Enabled to enable portal cookie replication.

For the Portal Cookie Replication URL enter the location to which you deployed the portal.war file on Apache Tomcat in an earlier step, for example, http://win2k3ent.us.oracle.com:8088/portal/PortalIntegrationServlet.

If you wish, you can change Timeout which is the frequency, in milliseconds, at which Oracle WebCenter Ensemble checks for portal cookies. You can also change Access Level which is the access level assigned to the user when Oracle WebCenter Ensemble detects a valid portal session cookie. Valid values are between 1 and 10. The defaults are shown in the screenshot.

Click Save and log out of Configuration Manager.

Show Screenshot for Step


Configure Oracle WebCenter Ensemble Resources and Pagelets


To register the Service Producer as a resource, register the task flows as a pagelets, and edit the aluiinjectorresource in Oracle WebCenter Ensemble, perform the following steps:

Register an Ensemble Resource


1.

Go to the Ensemble Administration Console URL, for example, http://win2k3ent:20070/ensembleadminui and log in with the Administrator's username and password, for example administrator/admin.

Click the APPLICATIONS tab. This will take you to the Resources page by default.

Show Screenshot for Step

 

2.

On the Resources page, click Create new. On the General page that appears, enter a Name,for example WC Services.

Show Screenshot for Step


3.

Click the Connections tab. For Internal URL prefix enter the hostname and port of the base URL of the service producer. For example, http://producer_svr:8891/.

For External URL prefixes enter any name that is unique within Ensemble, for example /webcenter/. This is the URL, relative to the Ensemble proxy, where the application will be running.

Click Save.

Show Screenshot for Step

 

4.

Set security on your new resource by navigating to POLICIES, selecting your resource, for example WC Services, and clicking Policies. For example, select and delete the Administrator user to allow anonymous access. Click Save.

Show Screenshot for Step

 

Register Ensemble Pagelets


1.

Return to APPLICATIONS and click the Pagelets tab, then Create new.

Show Screenshot for Step

 

2.

On the General tab, name the pagelet, for example wc_mail_portlet.

For Parent resource, select the resource you created in the previous step, for example WC Services.

Supply a Library name for example, Services. The Library name is a mandatory grouping name for pagelets.

Show Screenshot for Step


3.

Click the Location tab and you see the Internal URL prefix is already populated from the parent resource.

For URL suffix enter the suffix that completes the pagelet producer end point URL for the mail task flow. For example, servicesproducer/services?id=Mail&width=500px&height=300px. Click Save.

Show Screenshot for Step


4.

Repeat these steps to create another pagelet for the Documents task flow and name it, for example, wc_docs_portlet. Use the same Parent Resource (WC Services) and the same Library name (Services) as you used previously. On the Location tab enter the suffix that completes the pagelet producer end point URL for the documents task flow. For example, servicesproducer/services?id=DocManager&width=500px&height=300px.


Configure aluiinjectorresource


1.

WebCenter Interaction will use an Ensemble REST API to retrieve portlet content. The REST API runs as an intrinsic resource in Ensemble and is named aluiinjectorresource. This resource must accept the WebCenter Interaction portal login token as a valid form of authentication.

Navigate to POLICIES and click aluiinjectorresource.

Show Screenshot for Step

 

2.

Click the Authentication Level tab and select Allow Portal Login Token. Click Save.

Show Screenshot for Step

Note: These settings control access to the REST API itself, not to the pagelet content. You can require authentication for pagelets even if the REST API is publicly accessible.


Create Oracle WebCenter Interaction Portlets


To create two Oracle WebCenter Interaction portlets that display the WebCenter portlets via Ensemble pagelets, perform the following steps:

Create a Remote Server


1.

Go to the Oracle WebCenter Interaction URL, for example, http://win2k3ent:7001/portal/server.pt. Log in with the Administrator's username and password (or a user with the appropriate permissions to create these objects), for example, administrator/admin.

Click Administration and navigate to the administrative folder where you wish to store the objects, for example, Portal Resources.

Show Screenshot for Step

 

2.

From the Create Object drop-down, select Remote Server.

Show Screenshot for Step


3.

On the Create Remote Server Main Settings page, for Base URL enter the URL for the Ensemble proxy, for example http://win2k3ent:20050/. Click Finish.

Show Screenshot for Step

 

4.

On the Save In page, enter a name for the Remote Server, for example, WebCenter Remote Server and click Save.

Show Screenshot for Step

 

5.

On the Object Saved page, click Create new Portlet Web Service.

Show Screenshot for Step

 

Create a Portlet Web Service


1.

On the Create Web Service - Remote Portlet Main Settings page, the Portlet URL points to the REST API for the pagelet. This should be in the form:

inject/v2/portlet/<pagelet_library>/<pagelet_name>?csapi=true&content-type=iframe.

For example, for the mail portlet:

inject/v2/portlet/Services/wc_mail_portlet?csapi=true&content-type=iframe

The WebCenter Remote Server you created has already been selected. If you closed the Save dialog in the previous sub-step, to get to this page, select Web Service - Remote Portlet from the Create Object drop down then Browse to select the Remote Server.

Show Screenshot for Step

Note: ADF-based pages must be injected into WebCenter Interaction using iFrames. Also note that for WebCenter Interaction only, the API uses portlet and not pagelet in the Portlet URL. Pagelet is used in all other cases.

You may wish to increase the Portlet Timeout if there is slow performance in displaying the portlet.

 

2.

Click the HTTP Configuration link on the left of the page. On the HTTP Configuration page click Add Gateway Prefix.

Show Screenshot for Step


3.

Click the Advanced Settings link on the left of the page. On the Advanced Settings page check Send Login token to Portlets. The aluiinjectorresource is expecting a portal login token and this ensures it is sent. Click Finish.

Show Screenshot for Step


4.

On the Save In page, enter a name for the Web Service, for example, WebCenter Mail Web Service and click Save.

Show Screenshot for Step

 

5.

On the Object Saved page, click Create new Portlet.

Show Screenshot for Step

 

Create a Portlet


1.

On the Create Portlet Main Settings page, select the Portlet Type/Size, for example Wide. Click Finish.

The WebCenter Web Service you created has already been selected. If you closed the Save dialog in the previous sub-step, to get to this page, select Portlet from the Create Object drop down.

Show Screenshot for Step

 

2.

On the Save In page, enter a name for the portlet, for example, WebCenter Mail and click Save.

Show Screenshot for Step


3.

On the Object Saved page, click Close.

Show Screenshot for Step

Note: In this scenario, everything is done as Administrator so you don't need to edit security. In a realworld situation you should edit security on the portlet to allow your users to select it for their My Pages or Community pages.


4.

Repeat the steps above to create a Portlet Web Service for the Document Library portlet using the appropriate Portlet URL, for example, inject/v2/portlet/Services/wc_docs_portlet?csapi=true&content-type=iframe. Save it as WebCenter Docs Web Service.

Then follow the steps above to create a portlet based on this Web Service and call it WebCenter Docs.


Place the Portlets on a Portal Page

1.

Navigate to the page you want to place the portlets on, for example, the Services page of the Sales community and edit the page to add the WebCenter Services portlets, WebCenter Docs and WebCenter Mail.

Show Screenshot for Step

Note: To see the portlet correctly you must be viewing this page either as an Ensemble user who created the pagelet or as a user who, according to an Ensemble Access Policy, can see the pagelet. In this scenario everything is done as Administrator and the the username and password for both Ensemble and WebCenter Interaction is the same so it is not an issue.

 

Further Considerations


The scenario described in this tutorial works if the content is public or the same for all users. For true end-to-end identity propagation you need to configure SAML tokens which is described in the Exposing WebCenter Services Task Flows as WSRP Portlets and Ensemble Pagelets white paper. Refer to the 'Configure CSP Identity Asserter' section. In addition to what is described there you will also need to get the CSP Identity Asserter and deploy it on Oracle WebLogic Server by following these steps:
  1. Acquire the CSP Identity Asserter from the Oracle Web Tier at: %ORACLE_INSTANCE%\jdeveloper\webcenter\modules\oracle.webcenter.framework_11.1.1\csp-id-asserter.jar
  2. Copy the csp-id-asserter.jar into %WLS_HOME%\wlserver_10.x\server\lib\mbeantype then restart Oracle WebLogic Server

 

Summary

In this tutorial, you have learned how to:

Resources

Credits

Oracle Is The Information Company About Oracle | Oracle RSS Feeds | Careers | Contact Us | Site Maps | Legal Notices | Terms of Use | Your Privacy Rights