Configuring Siebel Open UI > Configuring Siebel Open UI to Interact with Other Applications > Displaying Data from Siebel Open UI in External Applications >

Configuring Communications with Siebel Portlets When Hosted Inside iFrame


This topic outlines the Siebel server parameter configurations to enable communication with Siebel portlets when hosted inside iFrame. These parameters can be modified for the Siebel component with which the functionality is meant to communicate. The instructions in this topic are not required when cross-domain communications are not needed.

To configure communications with Siebel portlets when hosted inside iFrame

  1. Set up the Siebel server parameters:
    1. Log in to a Siebel client with administrative privileges.
    2. Navigate to the Administration - Server Configuration screen, and then the Servers view.
    3. In the Siebel Servers list, choose a Siebel Server.
    4. In the Components list, select the component that you want to expose as a portlet
    5. In the Component Parameters list, add the following parameters.
      Parameter
      Description

      PortletAPIKey

      This is a required parameter. It is a unique key configured as a server parameter. The source portal program will need to pass this key, in order to be able to invoke a call on the Siebel application exposed as the portlet. The messaging object used to communicate with Siebel Portal will need to contain a parameter msg.Key. The msg.Key must match the key configured in this parameter. If the messaging object does not contain a key, or contains an invalid one, the invocation will result in an error in the Siebel portlet.

      PortletOriginList

      This is a required parameter. It defines the list of valid domains from which the Siebel portlet will accept a communication request. A comma separated list can be provided for this parameter. Any invocations coming from domains that are not listed here will cause an error in the Siebel portlet.

      PortletMaxAllowedAttempts

      This is an optional parameter. Its default value is 3. This parameter specifies the number of unsuccessful communication attempts with the portlet before Siebel Open UI blocks any subsequent calls. An unsuccessful call can occur in the following situations:

      • A domain attempts to send a communication request to the portlet, but the PortletOriginList does not specify this domain.
      • The portlet_key sent by the communicating domain does not match the parameter specified in the Siebel server.

      The Siebel portal will remain blocked up to the time extent as defined by PortletBlockedInterval after which the Siebel Open UI resets the unsuccessful attempts to zero.

      PortletBlockedInterval

      This is an optional parameter. Its default value is 900 seconds. This parameter specifies the time in seconds for which Siebel portlet will remain blocked to any communication attempt from the hosting portal or a neighboring portlet after having exceeded the number of unsuccessful communication attempts (as defined by PortletMaxAllowedAttempts). During this time, the Siebel portlet will still be open to access by the user of the application. However, no programmatic access is permitted.

  2. Based on your configuration, the portal, or another portlet in the portal, add the following object to your custom code:

    var msg = new Object();
    msg.SWEView = view_name;
    msg.SWEApplet = applet_name;
    msg.SWECmd =GotoView or GetApplet
    msg.Key = portlet_key;

    NOTE:  The SWEView, SWEApplet, and Key arguments are required. All other arguments are optional.

    where:

    • view_name specifies the view that Siebel Open UI displays in the portlet window. If you specify only the view, then Siebel Open UI displays the view and all the applets that this view contains.
    • applet_name specifies the applet that Siebel Open UI displays in the portlet window. If you specify only the applet, then Siebel Open UI displays only this applet and no view. If you specify the view and applet, then Siebel Open UI displays the applet in the view.
    • GotoView or GetApplet specifies whether or not to display a view or an applet in the portlet window.
    • portlet_key must specify the value that you specify for the PortletAPIKey server parameter in Step 1. The Siebel client sends this value to the Siebel Server when it calls a Siebel application. You must include the msg.Key argument, and the value of this argument must match the value of the key that the PortletAPIKey server parameter contains on the Siebel Server. If the messaging object does not contain a key, or if it contains a key that does match the value of the server parameter, then Siebel Open UI displays an error in the Siebel portlet.

      For example, the following code displays the Opportunity List Applet, and it displays this applet inside the Opportunity List View:

    var msg = new Object();
    msg.SWEView = Opportunity List View;
    msg.SWEApplet = Opportunity List Applet;
    msg.Key = oracle123;

  3. Add the following code immediately after the code that you added in Step 2.

    document.getElementById('siebelframeid').contentWindow.postMessage(msg, '*');

    This code invokes a change in the Siebel Portlet window, so that the requested view or applet will get loaded in the content area.

  4. You can use SWE commands to display a Siebel portlet in Siebel Open UI. For security reasons, you can use only the GotoView and GetApplet method to call a Siebel portlet from an external application. GotoPage and GotoPageTab are not applicable to Siebel Open UI. For more information, see the topic describing SWE commands available in Siebel Open UI in Siebel Portal Framework Guide.
    Supported Values
    Inside Siebel Application
    Called from UI Element Inside Siebel Portlet Container
    Called from Outside Siebel Portlet Container

    CanInvokeMethod

    Yes

    Yes

    No

    ExecuteLogin

    Yes

    This is not supported for HTTP GET. It is supported through HTTP POST.

    Not applicable for this use case.

    Yes

    This is not supported for HTTP GET. It is supported through HTTP POST.

    GotoView

    Yes

    Use only when invoked from the browser address bar by refresh or history navigation.

    Yes

    Yes

    GetApplet

    Yes

    Yes

    Yes

    InvokeMethod

    Yes

    Yes

    No

    For more information, Allowing Blocked Methods for HTTP GET Access.

    LoadService

    Yes

    Yes

    No

    Login

    Yes

    Not applicable to Siebel Open UI.

    Not applicable to Siebel Open UI (use SSO or similar).

    Logoff

    Yes

    Not applicable to Siebel Open UI.

    No

    ReloadCT

    Yes

    Yes

    No

Configuring Siebel Open UI Copyright © 2015, Oracle and/or its affiliates. All rights reserved. Legal Notices.