Bookshelf Home | Contents | Index | PDF | ![]() ![]() |
Configuring Siebel Open UI > Configuring Siebel Open UI to Interact with Other Applications > Displaying Data from External Applications in Siebel Open UI > Integrating External ContentThis topic provides an overview of Portal Agents. It describes the configuration and administration tasks necessary to display external content in the Siebel user interface. It also includes a reference topic that lists all of the commands available for use with Portal Agents. This chapter contains the following information:
About Portal AgentsPortal Agents allow you to integrate external data into the Siebel user interface. Portal Agents retrieve data by sending HTTP requests to external applications, and then display the HTML results in a Siebel applet or on some other portion of a Siebel application Web page. Portal Agents combine a set of features and technologies that allow you to integrate external content at the user interface layer, including the following:
NOTE: Portal Agents do not integrate data at the data layer or integrate business logic. Other mechanisms in the Siebel Portal Framework, such as Integration Objects and Virtual Business Components, are designed to meet those types of integration needs. For more information about Siebel EAI, see Overview: Siebel Enterprise Application Integration. This topic contains the following information: Portal Agents and Authentication StrategiesPortal Agents can be configured to support different authentication strategies:
For more information about authentication, see Siebel Security Guide. About Disposition TypesOne of the steps in setting up a Portal Agent is creating a symbolic URL. The symbolic URL specifies the information necessary to construct the HTTP request to send to the external application. Symbolic URLs can be one of several disposition types. The disposition type determines the following:
It is important to understand these disposition types and determine which one suits your integration needs. Each disposition type is discussed in one of the following topics: For information about defining symbolic URLs, see Defining Symbolic URLs. With a symbolic URL disposition type of Inline, the Siebel Server receives content sent by an external application. It combines the external content with Siebel-produced content and composes a single HTML page, which it then sends to the client browser for display to the user. Optionally, links in the aggregated content are rewritten so they reference the Siebel Server (proxy), rather than referencing the external application server directly. This allows the Siebel Server to handle links in the aggregated content in such a way that it appears to the user as one integrated application rather than from different application servers. The Inline disposition type supports session management. The Siebel Server uses session management to manage session cookies and automatically log in again to an external application after a time out occurs. The Inline disposition type requires that:
If the Inline disposition type is not appropriate, then you might try the IFrame disposition type. Use this disposition type when aspects of the external application do not allow content to be aggregated with other Siebel content. For more information, see Portal Agent Restrictions. The IFrame disposition type uses the The IFrame disposition type supports JavaScript and frames. Therefore, if the Inline disposition type does not work, then the IFrame option is the best option. The IFrame disposition type also supports the Session Keep Alive feature. However, it does not support session management. The IFrame disposition type works in many cases. However, it does not work when frames displayed within the Contextual Navigation Between Siebel Business Applications and Oracle Business Intelligence Pages When an Oracle® Business Intelligence (Oracle BI) page is integrated with a Siebel application through the portal framework and the portal content is dependent on the Siebel record, any change or update of the record in the Siebel application must also be reflected in the portal content. For example, for an Oracle BI applet embedded in a view with the Account List applet, its content dynamically changes at the same time that the content is changed within the Account List applet. To enable this behavior, you must do the following:
Form Redirect Disposition Type In the Form Redirect scenario, the Siebel Web client submits a request to the Siebel Server. The Siebel Server creates a form with the necessary authentication information in it, and then sends the form back to the browser. The browser loads the form and then submits it to the external host for processing. The external host sends back the results, which the browser displays in a new window. The Form Redirect disposition type is usually displayed in a new window, rather than inline with other Siebel applets. The Form Redirect disposition type is not commonly used with Siebel Business Applications. Portal Agents are meant to bring existing applications and content into the Siebel user interface without requiring additional modifications of the external application. However, this is not always possible due to the way HTML and Web browsers are designed. For example:
For these reasons, an Inline disposition type does not work often. However, if you control both the Siebel application instance and the external application, and can resolve some of these issues, then the Inline disposition type might work correctly. For more information about the Inline disposition type, see Inline Disposition Type. If you do not have control over the external application, the IFrame disposition type is the method most likely to provide satisfactory results. It works with about 80% of the form-based application sites tested. For more information about the IFrame disposition type, see IFrame Disposition Type. Table 15 summarizes the characteristics of each disposition type. Process of Creating Portal AgentsTo create a Portal Agent, perform the following tasks:
Determining the Login RequirementsBefore you configure Portal Agents, you must understand what information is required by the external application to authenticate users. Typically, this information is gathered using a form page, also called a login page, and then sent to the external application. You must determine exactly what information the form gathers from the user and sends to the external application, including field names and values. In cases where you have specific knowledge about how an external application is implemented and can consult with authoritative sources regarding how the application authenticates users, determining the required input fields and values is relatively simple. In cases where you do not have specific knowledge about how an external application is implemented, you must attempt to understand its authentication method by examining the application's login page. The steps describe an approach that you can use to reverse-engineer a login page and provide related Portal Agent configuration tips. NOTE: It is not always possible to reverse-engineer a login page. For example, JavaScript might process login field values prior to delivering the This task is a step in Process of Creating Portal Agents. To reverse-engineer a login page
NOTE: The Mozilla browser includes a page info command (^I) that analyzes forms on a page and displays the method, input fields, and so on. Portal Agent ConfigurationUsing Portal Agents to integrate external content into the Siebel user interface requires some simple configuration in Siebel Tools. You must configure a field on the business component to handle external data and then configure either an applet or a Web page item to display the content in the user interface. An applet displays external content inside the applet container on a view. A Web page item displays external content outside of an applet, such as in the banner frame for example. NOTE: This topic describes the configuration tasks that are unique to integrating external content with the Siebel user interface. It does not describe standard configuration tasks that you might be required to perform. For example, after you configure an applet to display external content, you might have to associate that applet with a view, add the view to a responsibility, and so on. These additional tasks are standard procedures for configuring Siebel Business Applications and are outside the scope of this book. For more information about configuring Siebel Business Applications, see Configuring Siebel Business Applications. This topic contains the following information:
Configuring Business Components to Handle External DataTo configure business components to handle external data using a symbolic URL, you must create a new calculated field on the business component. Rather than representing structured content, such as records in a database, this field represents the HTML content sent from an external host. NOTE: Although a symbolic URL displays data that is not stored in the database, the business component must have at least one record stored in an underlying table so that it is instantiated at run time. This task is a step in Process of Creating Portal Agents. To configure a business component to handle external data using a symbolic URL
Displaying External Content Within an AppletAfter you have created the calculated field on the business component, you expose it in the user interface. You display the external content using a control in a form applet or list applet. NOTE: You can also expose external content outside an applet, such as in the banner area. See Displaying External Content Outside of an Applet. This task is a step in Process of Creating Portal Agents. To display external content within an applet
Displaying External Content Outside of an AppletAfter you have created the calculated field on the business component, you expose it in the user interface. You can display the external content outside of an applet using Web Page Items. NOTE: You can also expose external content inside an applet, by using an Applet Control or List Column. For more information, see Displaying External Content Within an Applet. This task is a step in Process of Creating Portal Agents. To display content outside of an applet
Portal Agent AdministrationYou administer Portal Agents through several views located under the Administration - Integration screen in the Siebel Web client. As described in the following topics, these views allow you to define how to handle links, define the external host, and define the HTTP request that is sent to the external host. This topic contains the following information:
Defining the External HostYou define the external data hosts in the Host Administration view. This view allows you to do the following:
Defining Web ApplicationsWeb applications allow multiple symbolic URLs to send requests to the same Web application and share the same session. This is useful if you have two different applet controls that use symbolic URLs to submit requests to the same Web application. You can associate these symbolic URLs to a single Web application and specify whether they share the same session. There might be cases in which you do not want requests to share the same session. For example, you might not want to share a session when a session cookie contains more information than the session ID, as this could result in unexpected behavior. When you define a Web application, you specify whether it shares sessions. Web applications also allow you to define the Time Out value for the session time out feature. The Session Time Out feature is only applicable to symbolic URLs with a disposition type of Inline. This task is a step in Process of Creating Portal Agents.
Defining Symbolic URLsYou use the Symbolic URL Administration view to specify how to construct the HTTP request to the external application and to define any arguments and values to be sent as part of the request. This task is a step in Process of Creating Portal Agents.
Defining Symbolic URL ArgumentsSymbolic URL Arguments allow you to configure Portal Agents in several ways. You use symbolic URL arguments for two purposes, to define data to be sent to an external host and to submit commands to SWE that affect the behavior of Portal Agents. When defining arguments that send data, such as authentication requirements, the Argument Name and Argument Value are appended to the URL as an attribute-value pair. You can define symbolic URL arguments that send data as constants or that dynamically retrieve data from the Siebel database. Symbolic URLs allow you to retrieve data from the user's instantiated Siebel business component, such as Service Request or Account, or retrieve data from the Siebel Personalization business component, such as the user's ZIP Code or Language. For information about how to determine required data for applications that use form-based authentication, see Determining the Login Requirements. Symbolic URL arguments also allow you to implement commands which you use to define the behavior of Portal Agents. For usage descriptions of available commands, see Portal Agent Command Reference. This task is a step in Process of Creating Portal Agents. To define symbolic URL arguments
Configuring Multiple Symbolic URLs and Hosts for Alternative Execution LocationsYou can configure multiple symbolic URLs and symbolic URL hosts, to execute applications in alternative locations (for example, for testing or demonstration purposes). This topic contains the following information: NOTE: When you use an alternative symbolic URL host, all symbolic URLs in the application that are configured to use that host will use the alternative host name. In contrast, when you use alternative symbolic URLs, each symbolic URL used in the application must have its own alternative symbolic URL. Therefore, you can reduce the effort required to execute the application in an alternative location by using an alternative symbolic URL host rather than a symbolic URL. Configuring Alternative Symbolic URLs To use an alternative symbolic URL, define the additional symbolic URL at the Symbolic URL Administration view, and specify the following parameter in the [DataSources] section of the application's configuration file: SymbolicURLSuffix. The value of this parameter is appended to the end of the name of the default symbolic URL to specify the name of the alternative symbolic URL. For example, if the parameter SymbolicURLSuffix is set to _MyDemo in the application's configuration file, and the default symbolic URL name is AccountNews, then the symbolic URL that is used when the application is executed is AccountNews_MyDemo. The URL value associated with the AccountNews_MyDemo symbolic URL in the Symbolic URL Administration page is used. NOTE: When you define the alternative symbolic URL, its name must match the name of the existing symbolic URL with the value of the SymbolicURLSuffix parameter appended to it. For more information about defining symbolic URLs, see Defining Symbolic URLs. Configuring Alternative Symbolic URL Hosts To use an alternative symbolic URL host, define the additional symbolic URL host at the Host Administration view, and specify the following parameter in the [DataSources] section of the application's configuration file: SymbolicURLHostSuffix. This value is appended to the end of the name of the existing symbolic URL host to specify the name of the alternative symbolic URL host. For example, if the parameter SymbolicURLHostSuffix is set to _demo in the application's configuration file, and the existing host name is ABC, then the new host name is ABC_demo. The host name value associated with ABC_demo in the Host Administration page is used. NOTE: When you define the alternative symbolic URL host, its name must match the name of the existing symbolic URL host with the value of the SymbolicURLHostSuffix parameter appended to it. For more information about defining hosts, see Defining the External Host. Defining Content FixupThe Fixup Administration view allows you to define how links embedded within external HTML content are rendered in the Siebel user interface. The fixup types that you define here will be associated with symbolic URLs.
NOTE: Fixup is required for all links. Defining End-User Login CredentialsThe Portal Framework provides a mechanism to store user login credentials for external Web applications. The SSO Systems Administration view allows you to specify an external application and then enter login credentials on behalf of users. The My Logins view, located in the User Preferences screen, is used by end users to maintain their own credentials. To specify an external Web application and define login credentials
Example Portal AgentThis topic provides an example of using a symbolic URL to integrate content from an external site. The high-level steps to do this are:
Each of these steps is described in the topics that follow. This example uses www.example.com, which does not have the login page and other elements described here; substitute your actual site. NOTE: This example assumes that the underlying objects are already configured to support the symbolic URL. For more information, see Portal Agent Configuration. Review the Login FormBy reviewing the login page at www.example.com, you can determine the target URL of the Action attribute and the required arguments that are being passed to the Web application. Assume that www.example.com has a login page that contains the following <form action="/index.shtm" method="POST" name="frmPassLogin" onsubmit="return logincheck();"> <input TYPE="TEXT" NAME="SearchString" SIZE="18" MAXLENGTH="100" VALUE=""> <input type="hidden" value="All" name="sc"> <input type="hidden" value="ON" name="FreeText"> <input type="image" src="/images/nav/button/bttn_form_arrow.gif" NAME="Action" border="0"/ alt="Submit Search"></td> <input type="text" name="username" size="18"> <input type="password" name="password" size="18"> <input type="image" src="/images/nav/button/bttn_form_arrow.gif" border="0" name='login' /> <input type="checkbox" name="remember" checked/> <span class="bdDkGray">Remember my Login<br></span From the You can also determine that the After reviewing the NOTE: Notice that not all input fields are necessary for login. For more information about reviewing login forms, see Determining the Login Requirements. Define the External HostThe external host is simply the address of the login page. In this example, it is www.example.com. Be sure to provide a meaningful name in the Virtual Host Name field. This value is used instead of the actual host name when you define the symbolic URL. This makes administration easier if the host name changes. Also notice that there is no value for the Authentication Type. Figure 39 shows the external host defined for this example. For more information, see Defining the External Host. Define the Symbolic URLAfter you define the external host, you can define the symbolic URL. Notice that the URL defined here uses the Virtual Name of the host, not the actual name. Also notice that, when you select the external host from the Host Name field, it is populated with the actual host name. When SWE constructs the URL, it substitutes the actual Host Name for the Virtual Name in the URL. In this example, the fixup type is Default, because the page is displayed in the browser using the Figure 40 shows the symbolic URL defined for this example. For more information about defining symbolic URLs, see Defining Symbolic URLs. Define Symbolic URL ArgumentsYou use symbolic URL Arguments to define the information that you want to append as arguments to the URL. You also use symbolic URL arguments to define commands that you want to execute. In this case, the following arguments are required:
Figure 41 shows the symbolic URL arguments defined for this example. For more information about symbolic URL arguments, see Defining Symbolic URL Arguments. For more information about symbolic URL commands, see Portal Agent Command Reference. Define User Login CredentialsFinally you must define login credentials for a user. The values defined here are appended as arguments to the URL constructed by SWE. In this case, the following user name and password are defined: Testing the IntegrationAfter completing the previous steps, you can test the integration.
Reviewing the SWE Log FileReviewing the SWE log file can help you to debug errors in your Portal Agent configuration.
For more information about log files and about configuring log levels, see Siebel System Monitoring and Diagnostics Guide. Portal Agent Command ReferencePortal Agent commands allow you to carry out actions such as use a set of stored credentials for authentication or define additional attributes for the The following commands are described in this topic:
EncodeURL CommandUse the EncodeURL command to specify whether to encode arguments appended to the symbolic URL. By default, the URL is encoded. However, some servers do not recognize standard encoding, in which case you can use this command to not encode the URL. Define the fields in the Symbolic Arguments applet. See Table 16. FreePopup CommandUse the FreePopup command to show portal contents in a popup window. The symbolic URL contains the FreePopup command, it notifies the client that the popup is a free one and the client displays the contents in the popup window. FreePopup is supported for FormRedirect, the only disposition type available for opening a portlet in a popup. To start the external application as a full browser window, use the values in Table 17. To start the external application as a modal window, use the values in Table 18. IFrame CommandUse the IFrame command to define additional HTML attributes for the Define the fields in the Symbolic URL Arguments applet. See Table 19. Use the IFrame command with the IFrame disposition type. IsRecordSensitive CommandUse the IsRecordSensitive command to turn on or off the record-sensitive feature. Set the value to TRUE to ensure that a child applet with a symbolic URL is refreshed on the parent record, for instance, when you embed an Analytics report as a child applet with a requirement that it display contextual information. This command is turned off by default. Set this argument value to TRUE in the Symbolic URL Arguments configuration. Define the fields in the Symbolic URL Arguments applet. See Table 20. NoCache CommandUse the NoCache command to instruct SWE not to cache Inline responses on the server. This command is only valid for the Inline disposition type. Define the fields in the Symbolic URL Arguments applet. See Table 21. NoFormFixup CommandUse the NoFormFixup command to instruct SWE not to fix up a form by putting proxy SWE arguments into links that appear on the page. Define the fields in the Symbolic URL Arguments applet. See Table 22. PreLoadURL CommandUse this command to specify a preloaded URL. Use this command when the external application gathers information from a preloaded cookie on the client machine. Use this command with disposition types of IFrame and Web Control. Define the fields in the Symbolic URL Arguments applet. See Table 23. PostRequest CommandUse PostRequest to configure the Portal Agent to use the Define the fields in the Symbolic URL Arguments applet. See Table 24. UserLoginId CommandUse the UserLoginId command to send the stored user login ID for a particular Web application. The command gets the user's Login ID from the My Login Credential business component. For more information about how user login IDs are entered into this business component, see Defining End-User Login Credentials. Define the fields in the Symbolic URL Arguments applet. See Table 25. UserLoginPassword CommandUse the UserLoginPassword command to send the stored user password for a particular Web application. The command gets the user's password from the My Login Credential business component. For more information about how user passwords are entered into this business component, see Defining End-User Login Credentials. Define the fields in the Symbolic URL Arguments applet. See Table 26. UseSiebelLoginId CommandUse the UseSiebelLoginId command to retrieve the user's Siebel login ID from the stored set of credentials. Define the fields in the Symbolic URL Arguments applet. See Table 27. UseSiebelLoginPassword CommandUse the UseSiebelLoginPassword command to retrieve the user's Siebel password from the stored set of credentials. Define the fields in the Symbolic URL Arguments applet. See Table 28. |
![]() ![]() |
Configuring Siebel Open UI | Copyright © 2018, Oracle and/or its affiliates. All rights reserved. Legal Notices. | |