15.7 Sharing a Portlet Across Multiple Pages

When a portlet is added to a page, a portlet instance is created that stores information about that particular instance of the portlet. This includes information about changes made to the portlet. You can share a portlet instance so that the exact same portlet (including all of your changes) can be used on another page. This means that when a user personalizes the portlet instance on a page, those personalizations are reflected on all other pages that include the shared portlet instance. Users do not have to make the same personalizations to multiple instances of the same portlet.

For example, there are two versions of the same page: a standard page for use on desktop machines and a mobile page for use on mobile devices. You could share the portlets on the standard page and then add those shared portlet instances to the mobile page. That way, the user just needs to personalize the portlets on the standard page, and those same personalizations will automatically apply to the portlets on the mobile page.

You can share only portlets; you cannot share items or tabs. Should you try to share a non-sharable object, Oracle Portal will return an error.

This section describes how to share one or multiple portlets simultaneously and how to add a shared portlet instance to a page. It contains the following subsections:

15.7.1 Sharing One Portlet

To share a single portlet:

  1. Log in to Oracle Portal.

  2. Go to the page that hosts the portlet to be shared.

    For information on locating a page, see Section 8.1, "Locating Pages in Oracle Portal".

  3. Click the Edit link at the top of the page to switch to Edit mode.

  4. Click the Actions icon next to the portlet to be shared (Figure 15-10).

    Figure 15-10 The Actions Icon

    Actions icon
  5. Click the Share Instance link.

  6. On the confirmation page, click Yes to share the portlet instance and return to the page.

In Edit mode, the text Shared appears next to the portlet.

15.7.2 Sharing Multiple Portlets

To share more than one portlet:

  1. Go to the page that hosts the portlets you will share.

    For information on locating a page, see Section 8.1, "Locating Pages in Oracle Portal".

  2. Click the Edit link at the top of the page to switch to Edit mode.

  3. Go to Editing Views in the toolbar at the top of the page and click the Layout link.

  4. Select the check box next to all the portlets that you will share.

  5. Click Share.

  6. Click Yes in the confirmation page to share the portlets you have selected and return to the page.

15.7.3 Adding a Shared Portlet Instance to a Page

To add a shared portlet instance to a page:

  1. Log in to Oracle Portal.

  2. Go to the page on which to add a shared portlet instance.

    For information on locating a page, see Section 8.1, "Locating Pages in Oracle Portal".

  3. Click the Edit link at the top of the page to switch to Edit mode.

  4. Click the Add Portlet icon in the region to which to add the shared portlet instance (Figure 15-11).

    Figure 15-11 The Add Portlet Icon

    Add Portlet icon
  5. Click the Shared Portlets link in the Portlet Repository.

    Note:

    By default, shared portlet instances are located in the Shared Portlets page of the Portlet Repository. Your Oracle Portal administrator may have relocated shared instances. If so, either search for the name of the shared portlet instance, or ask your portal administrator for the new location.
  6. Click the portlet name to add it to the Selected Portlets list.

  7. Click OK to return to the page.

When you create a mobile page, if you base the page on an existing page, any portlets on the existing page are automatically shared with the mobile page. However, new portlets are not implicitly shared between a mobile page and the page on which it was based. If you add a portlet to a page that was used as the starting point for a mobile page, that portlet will not appear on the mobile page. If you want the portlet to also appear on the mobile page, you must add it to the mobile page. Additionally, if you want to share any personalizations made to the portlet between the two pages, you must explicitly share the portlet on one page, and then add that shared portlet instance to the other page.

If you want users to add a shared portlet instance to a page rather than the portlet itself, make sure access privileges in the Portlet Repository are set up appropriately.