21 Managing Oracle SES Search in WebCenter

This chapter describes how to configure the Oracle Secure Enterprise Search (SES) adapter to index and search most WebCenter objects. Oracle SES search is beneficial for the following reasons:

With WebCenter Portal applications, Oracle SES is set as the default and preferred search platform. Detailed configuration steps are in Section 21.5, "Configuring Oracle SES to Search WebCenter Portal Applications."

With WebCenter Spaces applications, internal WebCenter live search adapters are set as the default search platform; however, large-scale WebCenter implementations should be configured to use Oracle SES for best performance. Detailed configuration steps are in Section 21.6, "Configuring Oracle SES to Search WebCenter Spaces Applications."

The information in this chapter is not required if you are choose to use the original WebCenter Search services adapters to search WebCenter objects.

Always use Fusion Middleware Control or the WLST command-line tool to review and configure back-end services for WebCenter applications. Any changes that you make to WebCenter applications, post deployment, are stored in MDS metatdata store as customizations. See Section 1.3.5, "WebCenter Configuration Considerations."

Note:

Most changes that you make to Search configuration, through Fusion Middleware Control or using WLST, are not dynamic. You must restart the managed server on which the WebCenter application is deployed (by default, WC_Spaces) for your changes to take effect. See Section 8.2, "Starting and Stopping Managed Servers for WebCenter Application Deployments."

This chapter includes the following sections:

Audience

The content of this chapter is intended for Fusion Middleware administrators (users granted the Admin or Operator role through the Oracle WebLogic Server Administration Console). See also, Section 1.8, "Understanding Administrative Operations, Roles, and Tools."

21.1 What You Should Know About WebCenter Search with Oracle SES

Oracle recommends Oracle SES search for best performance. You can configure Oracle SES to search WebCenter applications for the following resources:

  • Documents, including wikis and blogs

  • Announcements and Discussions

  • Spaces, lists, pages, and people resources in WebCenter Spaces

Note:

Oracle WebCenter Spaces includes the additional Oracle SES crawler that indexes Spaces, lists, pages, and people resources in WebCenter Spaces. This crawler is not supported in WebCenter Portal applications.

Results from all sources are listed together, with the most relevant items appearing first. For example, when you run a search for a user name, most likely, you are looking for that person's contact information (that is, the exact user name in the People Connections service), not necessarily documents that the user wrote. The unified ranking results in Oracle SES allow you to see the most relevant results, across all different types of searches, without configuring Search Preferences.

When Oracle SES is configured to search WebCenter, other non-crawled resources (for example, notes and events) are not returned in search results.

Three types of Oracle SES crawlers index WebCenter resources:

  • Oracle WebCenter Documents Crawler: (For both WebCenter Portal applications and WebCenter Spaces applications.) This uses the Oracle SES Oracle Content Server source type to crawl documents, including wikis and blogs.

  • Oracle WebCenter Discussions Crawler: (For both WebCenter Portal applications and WebCenter Spaces applications.) This uses the Oracle SES Database source type to crawl discussions and announcements.

  • Oracle WebCenter Spaces Crawler: (For WebCenter Spaces applications only.) This uses the Oracle SES Oracle WebCenter source type to crawl certain WebCenter Spaces objects, such as lists, pages, Spaces, and people connections profiles.

Note:

Oracle SES crawls information collected as a source. Each source has a type that identifies where the information is stored, such as in a database or a content repository.

When you configure Oracle SES to search WebCenter, all available Oracle SES crawlers should be enabled. It is not recommended to enable one of these Oracle SES crawlers and not another Oracle SES crawler. For example, when you configure Oracle SES to search WebCenter Portal applications, you cannot have it crawl documents and not discussions.

21.2 Configuration Roadmaps for Oracle SES in WebCenter

Use the roadmaps in this section as an administrator's guide through the configuration process:

21.3 Prerequisites for using Oracle SES

This section includes the following subsections:

21.3.1 Oracle SES - Installation

Supported Oracle SES versions include 10.1.8.4.x and later. Oracle SES 11.1.2 is provided on the Oracle WebCenter companion CD. For Oracle SES installation directions, see the section, "Back-End Requirements for the Search Service" in Oracle Fusion Middleware Installation Guide for Oracle WebCenter.

See Also:

It is important to verify that you have installed all required patches for Oracle SES. For the latest information on required patches, see "Back-End Requirements for the Search Service" in Oracle Fusion Middleware Installation Guide for Oracle WebCenter and the Release Notes.

This chapter assumes that you have the latest supported products: Oracle SES 11.1.2 and Oracle Content Server 11.1.1.3; however, the following scenarios also are supported.

Oracle WebCenter 11.1.1.4 is supported with these installations:

  • Oracle SES 11.1.2 with Oracle Content Server 11.1.1.3

  • Oracle SES 10.1.8.4 with Oracle Content Server 1.1.1.3

  • Oracle SES 10.1.8.4 with Oracle Content Server 10.1.3.3.3

WebCenter Spaces 11.1.1.4 is supported with these installations:

  • Oracle SES 11.1.2 with Oracle Content Server 11.1.1.3

  • Oracle SES 10.1.8.4 with Oracle Content Server 11.1.1.3

Run the following steps to set up WebCenter for Oracle SES search.

  1. Get webcenter_search_ses_plugins.zip from the $WC_ORACLE_HOME/ses directory on the WebCenter instance, and put it in the Oracle_Home directory on the Oracle SES instance.

    Note:

    Oracle_Home represents the software location that you specified at the time of installing Oracle SES.

    The WebCenter instance and the Oracle SES instance might be on different computers.

  2. Change to the Oracle SES home directory. For example:

    cd $Oracle_Home
    
  3. Delete the file ./search/lib/plugins/webcenter/search-crawl-ucm.jar.

  4. Run the following command to install necessary WebCenter plug-ins:

    unzip webcenter_search_ses_plugins.zip
    

    This adds the following WebCenter jar files to an Oracle SES installation:

    • Oracle_Home/search/lib/plugins/webcenter/search-auth-share.jar

    • Oracle_Home/search/lib/plugins/webcenter/search-auth-plugin.jar

    • Oracle_Home/search/lib/plugins/doc/search-crawl-ucm.jar

21.3.2 Oracle SES - Configuration

  1. Oracle SES must be configured with an identity management system to validate and authenticate users. This is necessary for secure searches, so searches return only results that the user is allowed to view based on access privileges.

    Because WebCenter uses identity propagation when communicating with Oracle SES, WebCenter's user base must match that in Oracle SES. One way this can happen is by configuring WebCenter and Oracle SES to the same identity management system, such as Oracle Internet Directory.

    Note:

    For information on all WebCenter-supported identity management systems, see Section 27.2.3, "Default Identity and Policy Stores."

    Only one identity plug-in can be set up for each Oracle SES instance. All repositories (Oracle Content Server, Oracle WebCenter Discussions, and WebCenter Spaces) must share the same user base as Oracle SES.

    Oracle SES includes numerous identity plug-ins for identity management systems including Oracle Internet Directory, Oracle Content Server, and Microsoft Active Directory. For information, see the Oracle SES documentation included with the product. (This is listed in the WebCenter product area on the Oracle Fusion Middleware documentation library.)

    The following example sets up the identity plug-in for Oracle Internet Directory:

    1. In the Oracle SES administration tool, navigate to the Global Settings - Identity Management Setup page, select Oracle Internet Directory from the available identity plug-ins, and click Activate.

    2. Provide the following values:

      Host name: The host name of the computer where Oracle Internet Directory is running

      Port: The Oracle Internet Directory port number

      Use SSL: true or false, based on your preference

      Realm: The Oracle Internet Directory realm, for example, dc=us,dc=oracle,dc=com

      User name: The Oracle Internet Directory admin user name; for example, cn=orcladmin

      Password: Admin user password

    3. Click Submit.

  2. Each Oracle SES instance must have a trusted entity for allowing WebCenter end users to be securely propagated at search time. (A trusted entity allows the WebCenter application to authenticate itself to Oracle SES and assert its users when making queries on Oracle SES.) This trusted entity can be any user that either exists on the identity management server behind Oracle SES or is created internally in Oracle SES.

    You can do this either in WLST or in Oracle SES.

    Note:

    This trusted entity name and password is required later as the appUser and appPassword properties in the WLST command createSESConnection.

    To do this with WLST, use the createFederationTrustedEntity command (Example 21-1).

    Example 21-1 createFederationTrustedEntity Command

    createFederationTrustedEntity(
    'webcenter', 'http://ses-host:ses-port/search/api/admin/AdminService',
     'ses-admin-pw', 'webcenter-proxy-user', 'webcenter-proxy-user-pw', 
    'Trusted entity for WebCenter');
     
    

    where:

    • ses-host = Oracle SES host name

    • ses-port = Oracle SES port number

    • ses-admin-pw = Oracle SES admin user password

    • webcenter-proxy-user = Proxy user to log on WebCenter end users

    • webcenter-proxy-user-pw = Password of proxy user to log on WebCenter end users

    For command syntax and examples, see the section, "createFederationTrustedEntity" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

    To do this in Oracle SES, follow these steps.

    1. In the Oracle SES administration tool, navigate to the Global Settings - Federation Trusted Entities page.

    2. Enter a name for a trusted entity. This is the name that WebCenter uses to authenticate itself to Oracle SES at search time (before it propagates the end user identity to Oracle SES).

      To allow the entity to be authenticated through the active identity plug-in:

      - Make sure that the entity name is the name of a user that exists in the identity management system.

      - Leave the password field blank.

      - Select the Use Identity Plug-in for authentication checkbox.

      - Enter the authentication attribute value corresponding to the Authentication Attribute in your active identity plug-in.

      To allow the entity to be authenticated through Oracle SES:

      - Enter any user name (for example, wcsearch) and password (for example, welcome1).

      - Do not select the Use Identity Plug-in for authentication checkbox.

      For more information, see the online help for the Federation Trusted Entities page in Oracle SES.

Note:

For reference, the following sample user names are used in this chapter:
  • wcsearch: User of the Oracle SES Federation Trusted Entity

  • mycrawladmin: Crawl admin user in Spaces and in the identity management system to crawl certain WebCenter Spaces objects, such as lists, pages, Spaces, and people connections profiles

  • sescrawer (or admin user): Crawl admin user in Oracle Content Server with sescrawlerrole (or admin) role

21.3.3 Oracle SES - Security

Most enterprise deployments require that their HTTP connections be secure. SSL (secure socket layer) is an encryption protocol for securely transmitting private content on the internet. Oracle strongly recommends that you use an SSL-protected channel to transmit password and other secure data over networks.

For instructions, see Section 31.10, "Securing the Connection to Oracle SES with SSL."

21.4 Setting Up Oracle SES Connections

This section includes the following subsections:

21.4.1 Registering Oracle Secure Enterprise Search Servers

You can register multiple Oracle SES connections with a WebCenter application but only one of them is active at a time.

You can register Oracle SES connections using either Fusion Middleware Control or WLST. This section includes the following subsections:

21.4.1.1 Registering Oracle SES Search Connections Using Fusion Middleware Control

To register an Oracle SES instance with WebCenter applications:

  1. Log in to Fusion Middleware Control and navigate to the home page for the WebCenter application. For more information, see:

  2. Do one of the following:

    • For WebCenter Spaces - From the WebCenter menu, choose Settings > Service Configuration.

    • For WebCenter Portal applications - From the Application Deployment menu, choose WebCenter > Service Configuration.

  3. From the list of services on the WebCenter Service Configuration page, select Search.

  4. To connect to a new Oracle SES instance, click Add (Figure 21-3).

    Figure 21-3 Configuring Oracle Secure Search Services

    Configuring Oracle Secure Search Services
    Description of "Figure 21-3 Configuring Oracle Secure Search Services"

  5. On the Add Secure Enterprise Search Connection page, enter a unique name for this connection, and indicate whether this connection is the active (or default) connection for the application (Figure 21-4).

    Figure 21-4 Add Secure Enterprise Search Connection

    add SES connection page

    Table 21-3 describes the connection parameters.

    Table 21-3 Search Connection - Name

    Field Description

    Connection Name

    Enter a unique name for the connection. The name must be unique (across all connection types) within the WebCenter application.

    Active Connection

    Select to use the Oracle SES instance defined on this connection to search repositories outside the WebCenter application and include Oracle SES search results in your result set.

    While you can register multiple search connections for a WebCenter application, only one connection is used by the Search service—the default (or active) connection.


  6. Enter connection details for the Oracle SES instance (Table 21-4).

    Table 21-4 Oracle Secure Enterprise Search - Connection Details

    Field Description

    SOAP URL

    Enter the Web Services URL that Oracle SES exposes to enable search requests.

    Use the format:

    http://host:port/search/query/OracleSearch
    

    For example:

    http://myHost:7777/search/query/OracleSearch
    

    Federation Trusted Entity Name

    Enter the user name of the Oracle SES Federation Trusted Entity created in Section 21.3.2, "Oracle SES - Configuration."

    Tip: This user is configured in the Oracle SES administration tool, on the Global Settings - Federation Trusted Entities page.

    The WebCenter application must authenticate itself as a trusted application to Oracle SES to perform searches on behalf of WebCenter users.

    Examples in this chapter use wcsearch for this value.

    Federation Trusted Entity Password

    Enter the password for the Federation Trusted Entity.


  7. Click OK to save this connection.

Note:

To start using the new (active) connection you must restart the managed server on which the WebCenter application is deployed. For more information, see Section 8.2, "Starting and Stopping Managed Servers for WebCenter Application Deployments."

21.4.1.2 Registering Oracle SES Connections Using WLST

  1. Use the WLST command createSESConnection to create a connection to Oracle SES. For example:

    createSESConnection(appName='webcenter',
                       name='MySesConnection',
                       url='http://myhost.com:7777/search/query/OracleSearch',              
                       appUser='wcsearch',
                       appPassword='welcome1',
                       default=true)
    

    where appUser is the user name of the Oracle SES Federation Trusted Entity created in Section 21.3.2, "Oracle SES - Configuration."

For command syntax and examples, see the section, "createSESConnection" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

To configure the WebCenter Search service to actively use a new Oracle SES connection, set default=true. For more information, see Section 21.4.2.2, "Choosing the Active Oracle SES Connection Using WLST."

For information on how to run WLST commands, see Section 1.13.3.1, "Running Oracle WebLogic Scripting Tool (WLST) Commands."

Note:

To start using the new (active) connection or settings, you must restart the managed server on which the WebCenter application is deployed (by default, WC_Spaces). See "Starting and Stopping WebLogic Managed Servers Using the Command Line" in Oracle Fusion Middleware Administrator's Guide.

21.4.2 Choosing the Active Oracle SES Connection

You can register multiple Oracle SES connections with a WebCenter application but only one connection is active at a time.

Note:

These steps in this section are not necessary if you selected the active connection in Section 21.4.1, "Registering Oracle Secure Enterprise Search Servers."

This section includes the following subsections:

21.4.2.1 Choosing the Active Oracle SES Connection Using Fusion Middleware Control

To change the active connection:

  1. Log in to Fusion Middleware Control and navigate to the home page for the WebCenter application. For more information, see:

  2. Do one of the following:

    • For WebCenter Spaces - From the WebCenter menu, choose Settings > Service Configuration.

    • For WebCenter Portal applications - From the Application Deployment menu, choose WebCenter > Service Configuration.

  3. From the list of services on the WebCenter Services Configuration page, select Search.

    The Manage Secure Enterprise Search Connections table indicates the current active connection (if any).

  4. Select the connection you want to make the active (or default) connection, and then click Edit (Figure 21-5).

    Figure 21-5 Edit Icon

    Edit icon
  5. Select the Active Connection checkbox (Figure 21-6).

    Figure 21-6 Active Connection Checkbox

    Active Connection checkbox
  6. Click OK to update the connection.

Note:

To start using the new (active) connection you must restart the managed server on which the WebCenter application is deployed. For more information, see Section 8.2, "Starting and Stopping Managed Servers for WebCenter Application Deployments."

21.4.2.2 Choosing the Active Oracle SES Connection Using WLST

Use the WLST command setSESConnection with default=true to activate an existing Oracle SES connection. For command syntax and examples, see the section, "setSESConnection" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

To subsequently disable an Oracle SES connection, run the same WLST command with default=false. Connection details are retained but the connection is no longer named as an active connection.

For information on how to run WLST commands, see Section 1.13.3.1, "Running Oracle WebLogic Scripting Tool (WLST) Commands."

Note:

To start using the active connection you must restart the managed server on which the WebCenter application is deployed (by default, WC_Spaces). For more information, see the section, "Starting and Stopping WebLogic Managed Servers Using the Command Line" in Oracle Fusion Middleware Administrator's Guide.

21.4.3 Modifying Oracle SES Connection Details

You can modify Oracle SES connection details at any time.

To start using the updated (active) connection you must restart the managed server on which the WebCenter application is deployed.

Note:

The steps in this section are required only to modify the details configured in Section 21.4.1, "Registering Oracle Secure Enterprise Search Servers."

This section includes the following subsections:

21.4.3.1 Modifying Oracle SES Connection Details Using Fusion Middleware Control

To update connection details for an Oracle SES instance:

  1. Log in to Fusion Middleware Control and navigate to the home page for the WebCenter application. For more information, see:

  2. Do one of the following:

    • For WebCenter Spaces - From the WebCenter menu, choose Settings > Service Configuration.

    • For WebCenter Portal applications - From the Application Deployment menu, choose WebCenter > Service Configuration.

  3. From the list of services on the WebCenter Service Configuration page, select Search.

  4. Select the connection name, and click Edit.

  5. Edit connection details, as required. For detailed parameter information, see Table 21-4.

  6. Click OK to save your changes.

Note:

To start using the updated (active) connection you must restart the managed server on which the WebCenter application is deployed. For more information, see Section 8.2, "Starting and Stopping Managed Servers for WebCenter Application Deployments."

21.4.3.2 Modifying Oracle SES Connection Details Using WLST

Use the WLST command setSESConnection to alter an existing Oracle SES search connection. For command syntax and examples, see the section, "setSESConnection" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

Note:

To start using the updated (active) connection you must restart the managed server on which the WebCenter application is deployed (by default, WC_Spaces). For more information, see the section "Starting and Stopping WebLogic Managed Servers Using the Command Line" in Oracle Fusion Middleware Administrator's Guide.

21.4.4 Deleting Oracle SES Connections

You can delete Oracle SES connections at any time but take care when deleting the active connection. If you delete the active connection, users are not able to search content on external repositories.

This section includes the following subsections:

21.4.4.1 Deleting Search Connections Using Fusion Middleware Control

To delete an Oracle SES server connection:

  1. Log in to Fusion Middleware Control and navigate to the home page for the WebCenter application. For more information, see:

  2. Do one of the following:

    • For WebCenter Spaces - From the WebCenter menu, choose Settings > Service Configuration.

    • For WebCenter Portal applications - From the Application Deployment menu, choose WebCenter > Service Configuration.

  3. From the Service Connection drop-down, select Search.

  4. Select the connection name, and click Delete.

    Figure 21-7 Delete Connection Icon

    Delete icon

Note:

To effect this change you must restart the managed server on which the WebCenter application is deployed. For more information, see Section 8.2, "Starting and Stopping Managed Servers for WebCenter Application Deployments."

21.4.4.2 Deleting Search Connections Using WLST

Use the WLST command deleteConnection to remove a search connection. For command syntax and examples, see the section, "deleteConnection" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

For information on how to run WLST commands, see Section 1.13.3.1, "Running Oracle WebLogic Scripting Tool (WLST) Commands."

Note:

To effect this change you must restart the managed server on which the WebCenter application is deployed (by default, WC_Spaces). For more information, see the section "Starting and Stopping WebLogic Managed Servers Using the Command Line" in Oracle Fusion Middleware Administrator's Guide.

21.4.5 Testing Oracle SES Connections

Confirm the Oracle SES connection by entering in a browser the URL for Oracle SES Web Services operations:

http://host:port/search/query/

If the URL address does not render in the browser, then either the host or port for the Oracle SES server is incorrect, or Oracle SES has not been started.

21.5 Configuring Oracle SES to Search WebCenter Portal Applications

With WebCenter Portal applications, Oracle SES is set as the default and preferred search platform. Configuring Oracle SES to search WebCenter Portal applications requires similar steps to configuring Oracle SES to search WebCenter Spaces applications, but WebCenter Portal applications do not support the Oracle WebCenter Spaces Crawler.

Note:

For an overview of the tasks that must be performed to enable Oracle SES as the search engine in WebCenter Portal applications, see Section 21.2, "Configuration Roadmaps for Oracle SES in WebCenter." There may be various acceptable ways and orders to perform the required tasks.

This section describes the steps to set up Oracle SES to search WebCenter Portal applications:

21.5.1 Setting Up Oracle Content Server for Oracle SES Search

This section describes how to configure Oracle Content Server to be crawlable by Oracle SES (in particular, the Oracle Content Server that WebCenter uses for storing documents).

The following steps must be done from within Oracle Content Server.

  1. Create the role sescrawlerrole.

  2. Create the user sescrawler, and assign it the admin role and the sescrawlerrole role. This user creates the Oracle Content Server source in Oracle SES.

  3. Add sceCrawlerRole=sescrawlerrole to config.cfg.

  4. Restart Oracle Content Server.

  5. In the Oracle Content Server console, install the SESCrawlerExport component on the content server, if not done:

    1. Log on to Oracle Content Server as a system administrator. For example: http://host:port/cs.

    2. From the Administration dropdown menu, select Admin Server (Figure 21-8).

      Figure 21-8 Oracle Content Server Administration

      Description of Figure 21-8 follows
      Description of "Figure 21-8 Oracle Content Server Administration"

    3. Click the button with the instance name.

    4. Click Component Manager from the menu list on the left pane (Figure 21-9).

      Figure 21-9 Oracle Content Server Component Manager

      Description of Figure 21-9 follows
      Description of "Figure 21-9 Oracle Content Server Component Manager"

    5. Select SESCrawlerExport under Integration and click Update.

    6. Enter configuration parameters. (You can change configuration parameters after installation.)

      Disable security on authentication and authorization APIs provided by the SESCrawlerExport; that is, set Disable Secure APIs to false. This lets security provided by the SESCrawlerExport be done internally instead of by the content server.

      Additionally, in clustered environments only, the feedLoc parameter must specify a location on the shared disk accessed by the nodes of content server, and they each must reference it the same way; for example, sharedDrive/dir1/dir2. Note that this is not the default location (relative path) provided.

    7. Restart Oracle Content Server.

  6. Take a snapshot of the Oracle Content Server repository.

    1. Log on to Oracle Content Server as a system administrator. For example: http://host:port/cs.

    2. From the Administration dropdown menu, select SESCrawlerExport.

    3. Select All sources, and click Take Snapshot (Figure 21-10).

      Figure 21-10 Oracle Content Server Snapshot

      Description of Figure 21-10 follows
      Description of "Figure 21-10 Oracle Content Server Snapshot"

      It is important to take a snapshot before the first crawl or any subsequent full crawl of the source.

      The snapshot generates configFile.xml at the location specified during component installation, and feeds are created at the subdirectory with the source name under feedLoc.

For detailed information on Oracle Content Server configuration, see the Deployment Guide.pdf included with the product.

21.5.2 Setting Up Oracle WebCenter Discussions for Oracle SES Search

This section describes how to configure Oracle WebCenter Discussions to be crawlable by Oracle SES (in particular, the Oracle WebCenter Discussions Server that WebCenter uses for storing discussions and announcements).

Note:

These steps is not required if you have a new installation of WebCenter (with an Oracle database) and Oracle WebCenter Discussions. It is only required if you are using upgraded (patched) instances.

You can find database schema details for the corresponding data sources from your Oracle WebLogic Server console.

  1. Run the Repository Creation Utility (RCU) to confirm that the Discussions Crawler WebCenter component has been installed on the system.

    • Oracle databases:

      Verify that the Oracle WebCenter Discussions back end has been configured properly by noting that the MyPrefix_DISCUSSIONS user is installed in RCU.

      Then verify that the Oracle WebCenter Discussions Crawler has been configured properly by noting that the MyPrefix_DISCUSSIONS_CRAWLER user is installed in RCU.

    • Microsoft SQL Server databases:

      Verify that the Oracle WebCenter Discussions back end has been configured properly by noting that the MyPrefix_DISCUSSIONS user is installed in RCU.

      Then verify that the Oracle WebCenter Discussions Crawler has been configured properly by noting that the MyPrefix_DISCUSSIONS_CRAWLER user is installed in RCU.

    • IBM DB2 databases:

      Verify that the Oracle WebCenter Discussions back end has been configured properly by noting that the MyPrefix_DS user is installed in RCU. Then verify that the Oracle WebCenter Discussions Crawler has been configured properly by noting that the MyPrefix_DC user is installed in RCU.

      Note:

      For IBM DB2 databases, MyPrefix is limited to five characters. IBM DB2 uses operating system users for authentication (that is, the database user is actually an operating system user). Because some operating systems have an eight character limit for user names, this requires an eight character user name.

    If the Discussions Crawler component is not installed, then you must install it using RCU, selecting the same prefix that was used for the Oracle WebCenter Discussions component. Also, during the tablespace specification step in RCU, select Prefix_IAS_DISCUSSIONS as the default tablespace. This installs the user for Oracle SES.

    For more information, see Chapter 7, "Deploying WebCenter Applications."

  2. Run the following tool to upgrade the data in the Oracle WebCenter Discussions database schema, if you have not run the tool yet:

    java -jar \
    $MW_HOME/discussionserver/discussionserver-upgradeforses.jar \
    <command_line_parameters>
    

    where command_line_parameters are the following MDS schema details and discussions database schema details:

    -mds_jdbc_user user_id \ 
    -mds_jdbc_password password \
    -mds_jdbc_url url \
    -discussions_jdbc_user user_id \
    -discussions_jdbc_password password \
    -discussions_jdbc_url url
    

    where mds_jdbc_user, mds_jdbc_password, and mds_jdbc_url are the values to log in to the MDS schema, and discussions_jdbc_user, discussions_jdbc_password, and discussions_jdbc_url are the values to log in to the discussions database schema.

    For example:

    java -jar $MW_HOME/as11r1wc/discussionserver/discussionserver-upgradeforses.jar\
    -mds_jdbc_user foo \ 
    -mds_jdbc_password welcome1 \ 
    -mds_jdbc_url jdbc:oracle:thin:@host:port:SID \
    -discussions_jdbc_user foo \ 
    -discussions_jdbc_password welcome1 \ 
    -discussions_jdbc_url jdbc:oracle:thin:@host:port:SID
    

21.5.3 Setting Up Oracle SES to Search WebCenter

The steps in this section must be performed in the Oracle SES administration tool.

The following steps are required:

  1. Section 21.5.3.1, "Logging on to the Oracle SES Administration Tool"

  2. Section 21.5.3.2, "Setting Up Oracle SES to Search Documents"

  3. Section 21.5.3.3, "Setting Up Oracle SES to Search Discussions and Announcements"

  4. Section 21.5.3.4, "Additional Oracle SES Configuration"

See Also:

Confirm that you have installed all required patches for Oracle SES. For the latest information on required patches, see "Back-End Requirements for the Search Service" in Oracle Fusion Middleware Installation Guide for Oracle WebCenter and the Release Notes.

For detailed information about Oracle SES configuration, see the Oracle SES documentation included with the product. (This is listed in the WebCenter product area on the Oracle Fusion Middleware documentation library.)

21.5.3.1 Logging on to the Oracle SES Administration Tool

Open the Oracle SES administration tool:

  1. Open a browser and enter the URL provided after the installation. (This has the form http://host:port/search/admin/index.jsp.)

  2. Log on with the Oracle SES admin user name eqsys and the password specified during installation.

21.5.3.2 Setting Up Oracle SES to Search Documents

To search WebCenter documents using Oracle SES, you must first set up a Document Service Manager (with a Document Service Instance and a Document Service Pipeline), and then create an Oracle Content Server source.

  1. Configure the Document Service Manager (one time for each Oracle SES instance).

    Note:

    Document services are plug-ins involved in the processing of a document when it is being crawled. A document service allows WebCenter to add indexable attributes for documents used in a WebCenter application.
    1. On the Global Settings - Document Services page, click Create. Select Create New Manager, click Next, and enter the following parameters:

      Manager Class Name: oracle.webcenter.search.crawl.ucm.ses.WcUcmDsManager

      Manager Jar File Name: search-crawl-ucm.jar

      Note:

      The webcenter_search_ses_plugins.zip file installs Oracle_Home/search/lib/plugins/doc/search-crawl-ucm.jar. For more information, see Section 21.3.1, "Oracle SES - Installation."

      Click Next, and then click Finish (Figure 21-11).

      Figure 21-11 Creating a Document Services Manager in Oracle SES

      Description of Figure 21-11 follows
      Description of "Figure 21-11 Creating a Document Services Manager in Oracle SES"

    2. Create the Document Service Instance.

      Again, on the Global Settings - Document Services page, click Create. This time, select Select From Available Managers with Secure Enterprise Search WebCenter UCM Plugin, and click Next (Figure 21-12).

      Figure 21-12 Create Document Service

      Description of Figure 21-12 follows
      Description of "Figure 21-12 Create Document Service"

      In addition to the entering an instance name, enter the following parameters:

      WebCenter Application Name: This must be left blank.

      Connection Name: The Oracle Content Server connection name in your WebCenter Portal application.

      WebCenter URL Prefix: The host and port where the WebCenter application is deployed, plus the context root; for example: http://myhost:8888/DocumentServer.

    3. Create the Document Services Pipeline. This invokes the document service instance.

      Again, on the Global Settings - Document Services page, under the Document Services Pipelines section, click Create.

      Enter a name and select the instance created in the previous step.

  2. Create the Oracle Content Server source for documents.

    1. Go to Home > Sources.

    2. From the Source Type dropdown list, select Oracle Content Server, and click Create (Figure 21-13).

      Figure 21-13 Create Oracle Content Server Source

      Description of Figure 21-13 follows
      Description of "Figure 21-13 Create Oracle Content Server Source"

    3. Enter the following parameters:

      Source Name: unique_name

      Configuration URL: Content_Server_SES_Crawler_Export_endpoint; for example, http://host:port/cs/idcplg?IdcService=SES_CRAWLER_DOWNLOAD_CONFIG&source=default

      Note:

      The source=default parameter denotes the name of the source created in the configuration of the SES Crawler Export. The default one is created automatically and called "default."

      Authentication Type:

      If Oracle Content Server is not protected by SSO, then enter NATIVE.

      If Oracle Content Server is protected by Oracle SSO, then enter ORASSO.

      User ID: This user to crawl Oracle Content Server must have the sceCrawlerRole role defined. The sceCrawlerRole is a configuration parameter in SESCrawlerExport. Typically, administrators create a special role, assign it no privileges to view content, then create a user account that has this role.

      If you do not set up a specific sceCrawlerRole, then admin credentials are required to crawl. The sysadmin user ID works by default.

      If Authentication Type is ORASSO, then enter a user ID (and password) of a user in the identity management server fronted by Oracle SSO. This user must have been granted the same permissions as sysadmin. If it is not possible to grant those permissions, then delete the "remote" user corresponding to this user in Oracle Content Server, and create a "local" version of the user (same name) in Oracle Content Server.

      Password: Password for this Oracle Content Server user.

      Realm:

      If Authentication Type is NATIVE, then enter Idc Security /cs/idcplg, where /cs/ is the context root you provided when you installing Oracle Content Server.

      If Authentication Type is ORASSO, then leave this parameter blank.

      Scratch Directory: Optional. Specify a directory on the system under which the Oracle SES instance resides.

      Oracle SSO Login URL:

      If Authentication Type is ORASSO, then specify a value for Oracle SSO. For example: https://login.oracle.com/mysso/signon.jsp?site2pstoretoken=

      If Authentication Type is NATIVE, then leave this field blank.

      Oracle SSO Action URL:

      If Authentication Type is ORASSO, then specify a value for Oracle SSO. For example: https://login.oracle.com/sso/auth

      If Authentication Type is NATIVE, then leave this field blank.

      Click Next (Figure 21-14).

      Figure 21-14 Oracle Content Server Source Parameters

      Description of Figure 21-14 follows
      Description of "Figure 21-14 Oracle Content Server Source Parameters"

    4. On the Create User-Defined Source : Step 2 : Authorization page, enter the following parameters in the Authorization Manager section, if not entered by default:

      Plug-in Class Name: oracle.search.plugin.security.auth.stellent.StellentAuthManager

      Jar File Name: oracleapplications/StellentCrawler.jar

      HTTP endpoint for authorization: for example, http://host:port/cs/idcplg

      Display URL Prefix: for example, http://host:port/cs

      Authentication Type: NATIVE or ORASSO

      Administrator User: This user to crawl Oracle Content Server must have the sceCrawlerRole role defined. The sceCrawlerRole is a configuration parameter in SESCrawlerExport. Typically, administrators create a special role, assign it no privileges to view content, then create a user account that has this role.If you do not set up a specific sceCrawlerRole, then admin credentials are required to crawl. The sysadmin user ID works by default.

      If Authentication Type is ORASSO, then enter a user ID (and password) of a user in the identity management server fronted by Oracle SSO. This user must have been granted the same permissions as sysadmin. If it is not possible to grant those permissions, then delete the "remote" user corresponding to this user in Oracle Content Server, and create a "local" version of the user (same name) in Oracle Content Server.

      Administrator Password: Password for crawl admin user

      Authorization User ID Format: Authentication attribute used in the active identity plug-in. To find this value, go to the Global Settings - Identity Management Setup page in Oracle SES. Enter the value of the Authentication Attribute under the Active Plug-in (for example, nickname or username or something else). If you are using the Oracle E-Business Suite R12 identity plug-in, then leave the this parameter blank.

      Realm:

      If Authentication Type is NATIVE, then enter "Idc Security /cs/idcplg", where /cs/ is the context root you provided when you installing Oracle Content Server.

      In Authentication Type is ORASSO, then leave this field blank.

    5. Click Create & Customize (or edit a created source) to see other source parameters. On the Crawling Parameters tab, enter the following crawling parameter: Document Service Pipeline.

    6. Click Enable and select the pipeline you created.

21.5.3.3 Setting Up Oracle SES to Search Discussions and Announcements

To search WebCenter discussions and announcements using Oracle SES, you must first set up two Oracle SES Database sources: one for discussions and one for announcements. For example, the discussions source could have the source name GS_Discussions and a View of FORUMCRAWLER_VW, and the announcements source might have the source name GS_Announcements and a View of ANNOUNCEMENTS_VW.

Note:

There are slightly different steps for Oracle, Microsoft SQL Server, and IBM DB2 databases.
  1. Configure the JDBC driver:

    1. To crawl a Microsoft SQL Server or IBM DB2 database, download the appropriate JDBC driver jar files into the ORACLE_HOME/search/lib/plugins/oracleapplications directory in Oracle SES.

      Note:

      • For Microsoft SQL Server: Copy the Microsoft JDBC driver files sqljdbc.jar and sqljdbc4.jar.

      • For IMB DB2: Copy the IBM driver files db2jcc.jar and db2jcc_license_cu.jar (obtainable from the IBM DB2 UDB client).

      If the JDBC drivers for JRE 1.5 and JRE 1.6 are different (for example: sqljdbc.jar works for JRE 1.5 and sqljdbc4.jar works for JRE 1.6), then perform the following:

      - Download both the driver jars into the ORACLE_HOME/search/lib/plugins/oracleapplications directory in Oracle SES.

      - Add an entry for the JRE 1.6 version (sqljdbc4.jar for SQLServer) of the driver jar to the CLASSPATH element of ORACLE_HOME/search/config/searchctl.conf.

      - Restart the middle tier.

    2. Update the drivers.properties file with the following information: DatabaseName:DriverClassName.

    3. Add the JRE 1.5 JDBC driver jar file name to the classpath in META-INF/MANIFEST.MF of appsjdbc.jar and DBCrawler.jar.

      For example, change:

      Class-Path:  sqljdbc.jar rsscrawler.jar  ../../pluginmessages.jar
      

      to

      Class-Path:  db2jcc.jar sqljdbc.jar rsscrawler.jar  ../../pluginmessages.jar
      

      and change:

      Class-Path: appsjdbc.jar
      

      to

      Class-Path: db2jcc.jar appsjdbc.jar
      

    For a key attribute that is not named KEY, change the JDBC driver information in the drivers.properties file to specify the key attribute name: database_name: driver_class_name, key_attribute_name

    For example, for a key attribute named ID:

    oracle : oracle.jdbc.driver.OracleDriver, ID
    

    In the crawling query, use key_attribute_name as the alias for the key value column name. In this example, ID is the alias for KEYVAL:

    SELECT keyval id, content, url, lastmodifieddate, lang FROM sales_only
    

    Oracle and SQL Server databases: The following default drivers are used if none is specified in drivers.properties:

    • Oracle: oracle.jdbc.driver.OracleDriver

    • SQL Server: com.microsoft.sqlserver.jdbc.SQLServerDriver

  2. Required for IBM DB2 databases only:

    1. Make sure that no crawlers are running that use the database crawler source. In the Oracle SES administration tool, check the crawler progress and status on the Home - Schedules page. (Click Refresh Status.)

    2. Remake the appsjdbc.jar file and the DBCrawler.jar file. Ensure that the META-INF/MANIFEST.MF was updated correctly; otherwise, the crawler fails with the following error in the crawler log file:

      EQP-80406: Loading JDBC driver failed
      
    3. Modify the Oracle_Home/search/lib/plugins/oracleapplications/drivers.properties file to include the following line:

      db2: com.ibm.db2.jcc.DB2Driver
      
    4. Include the driver jar (db2jcc.jar) to the CLASSPATH element of ORACLE_HOME/search/config/searchctl.conf. For example:

      #CLASS PATH
      CLASSPATH=ORACLE_HOME/search/webapp/config:ORACLE_HOME/search/webapp/
      SESAuthenticator.jar:ORACLE_HOME/search/lib/plugins/commons-plugins-
      stubs.jar :ORACLE_HOME /search/lib/plugins/oracleapplications/db2jcc.jar
      
    5. Edit JVM_OPTIONS in the $ORACLE_HOME/search/config/searchctl.conf file to add the system property "-Doracle.home=ORACLE_HOME/search". For example:

      JVM_OPTIONS= -Djava.awt.headless=true
      -Dweblogic.RootDirectory=ORACLE_HOME/search/base_domain
      -Doracle.home=ORACLE_HOME/search
      
    6. Copy the $ORACLE_HOME/search/lib/plugins/oracleapplications/pluginmessages.jar file to the $ORACLE_HOME/search/lib directory.

    7. Create the database source. Make sure to enter the correct authorization query and confirm that the attribute name used in Grant Security Attributes matches the one used in the authorization query; otherwise, users do not get any results when searching for documents.

  3. Create a Discussions source or an Announcements source.

    1. In Oracle SES, go to Home > Sources.

    2. From the Source Type dropdown list, select Database, and click Create (Figure 21-15).

      Figure 21-15 Create Database Source

      Description of Figure 21-15 follows
      Description of "Figure 21-15 Create Database Source"

    3. Enter the following parameters:

      Source Name: unique_name; for example, GS_Discussions to crawl discussions (or GS_Announcements to crawl announcements)

      Database Connection String: Enter one of the following

      - Oracle databases: Enter one of the following

      jdbc:oracle:thin:@host:port:sid

      jdbc:oracle:thin@host:port/serviceId

      - IBM DB2 databases: Enter jdbc:db2://host:port/database_name

      - Microsoft SQL Server databases: Enter jdbc:sqlserver://host_or_IP_address:port;database_name

      User ID: Enter one of the following

      - Oracle databases: The user MyPrefix_DISCUSSIONS_CRAWLER created during Oracle WebCenter Discussions installation

      - Microsoft SQL Server databases: The user MyPrefix_DISCUSSIONS_CRAWLER created during Oracle WebCenter Discussions installation

      - IBM DB2 databases: The user MyPrefix_DC created during Oracle WebCenter Discussions installation (where MyPrefix is five characters)

      Password: Password for this user

      Query: Enter one of the following queries:

      SELECT * FROM FORUMCRAWLER_VW
      SELECT * FROM ANNOUNCECRAWLER_VW
      

      Use FORUMCRAWLER_VW for the source crawling discussion forums.

      Use ANNOUNCECRAWLER_VW for the source crawling announcements.

      URL Prefix: The URL prefix for the WebCenter application, including host, port, and application name. For example, http://host:port/webcenter.

      Grant Security Attributes: WCSECATTR

      Note:

      Previous releases of Oracle Content Server used FORUMID for Grant Security Attributes.
    4. Click Next.

    5. On the Create User-Defined Source : Step 2 : Authorization page, enter the following parameters (if not prepopulated) in the Authorization Manager section:

      Plug-in Class Name: oracle.search.plugin.security.auth.db.DBAuthManager

      Jar File Name: oracleapplications/DBCrawler.jar

      Authorization Database Connection String: Enter one of the following:

      - Oracle databases: Enter one of the following:

      jdbc:oracle:thin:@host:port:sid

      jdbc:oracle:thin@host:port/serviceId

      - IBM DB2 databases: Enter jdbc:db2://host:port/database_name

      - Microsoft SQL Server databases: Enter jdbc:sqlserver://host_or_IP_address:port;database_name

      User ID: Enter one of the following:

      - Oracle databases: Enter the user MyPrefix_DISCUSSIONS_CRAWLER

      - Microsoft SQL Server databases: Enter the user MyPrefix_DISCUSSIONS_CRAWLER

      - IBM DB2 databases: Enter the user MyPrefix_DC (where MyPrefix is five characters)

      Password: This user password

      Single Record Query: false

      Authorization Query: Enter the following (on one line):

      SELECT DISTINCT forumID as WCSECATTR 
      FROM AUTHCRAWLER_FORUM_VW 
      WHERE username = ? UNION SELECT DISTINCT -1 as WCSECATTR 
      FROM AUTHCRAWLER_FORUM_VW
      

      Note:

      Previous releases of Oracle Content Server used the following authorization query:
      SELECT forumID 
      FROM AUTHCRAWLER_FORUM_VW 
      WHERE (username = ? or userID=-1) 
      UNION SELECT f.forumID 
      FROM jiveForum f, AUTHCRAWLER_CATEGORY_VW c 
      WHERE f.categoryID = c.categoryID AND (c.username =  ? or userID=-1) 
      

      Authorization User ID Format: Authentication attribute used in the active identity plug-in. To find this value, go to the Global Settings - Identity Management Setup page in Oracle SES. Enter the value of the Authentication Attribute under the Active Plug-in (for example, nickname or username or something else).

      If you are using the Oracle E-Business Suite R12 identity plug-in, then leave the this parameter blank.

    6. Click Create to complete the source creation.

21.5.3.4 Additional Oracle SES Configuration

This section describes the required steps in the Oracle SES administration tool.

  1. Create a source group that includes the names of the Oracle Content Server, Discussions, Announcements, and WebCenter services sources you created.

    1. Go to the Search - Source Groups page, and click Create.

    2. Enter the same source group name entered in Section 21.5.4, "Setting Up WebCenter for Oracle SES Search."

    3. From the Select Source Type dropdown list, select each source type (Database, Oracle Content Server, Oracle WebCenter), and then from the Available Sources listed for each source type, move the source you created for that source type into the Assigned Sources list.

    4. Click Finish.

  2. Optionally configure the security filter lifespan. This refreshes the authorization policies for users in the system. It is best to have a short lifespan when user policies change frequently. (This chapter uses Oracle Internet Directory identity plug-in as the example.)

    For example, on the Global Settings - Query Configuration page, under Secure Search Configuration, enter 0 for Security Filter Lifespan (minutes).

    Valid values for the security filter lifespan are between 0 minutes (no cache) and 526500 minutes (cache for one year).

  3. To index everything, you must force a full crawl for each source; that is, you must change the existing incremental crawl schedule for each source to first process ALL documents.

    This step is very important, in that searching does not work unless the content is first indexed completely.

    Go to the Home - Schedules page, select the source schedule, and click Edit to force a full crawl.

    After each source has been crawled, go back to the same page and change the crawl policy back to incremental (index documents that have changed since the previous crawl). Also, in the Frequency section of the page, select a non-manual type for running incremental crawl (for example, weekly or daily).

    Note:

    Before the first crawl of Oracle Content Server, remember to go to the Oracle Content Server Administration page, select SES Crawler Export, and take a snapshot. For more information, see Section 21.5.1, "Setting Up Oracle Content Server for Oracle SES Search."

21.5.4 Setting Up WebCenter for Oracle SES Search

This section describes how to configure WebCenter to work with Oracle SES.

Make sure you have created and configured the connection between WebCenter and Oracle SES, specifying the Federation Trusted Entity, and optionally specifying a source group.

The Oracle SES crawlers are enabled by default in WebCenter Portal applications.

21.5.4.1 Configuring WebCenter Portal Applications After Deployment

After a WebCenter Portal application has been deployed to an Oracle WebLogic managed server, you can configure it using WLST or Fusion Middleware Control. This section contains the following subsections:

21.5.4.1.1 Modifying Search Parameters Using WLST

Use the WLST command setSearchConfig to modify search parameters post deployment.

Example 21-2 shows how to specify a data group (also known as source group) under which you search Oracle SES.

Example 21-2 Set a Source Group

setSearchSESConfig(appName='webcenter',
                   dataGroup='MySources')

where dataGroup is the source group you create in Section 21.5.3.4, "Additional Oracle SES Configuration" (for WebCenter Portal applications) or in Section 21.6.4.6, "Additional Oracle SES Configuration" (for WebCenter Spaces applications).

Example 21-3 shows how to increase the number of search results displayed. Five is the default setting for the number of search results displayed in Oracle SES results, but result sets generally are larger than five.

Example 21-3 Increase Number of Search Results Displayed

setSearchConfig(appName='webcenter',
                numResultsMain=10)

Example 21-4 shows how to configure the maximum time that a service is allowed to execute a search (in ms). When a service times out largely depends on the system load. If you consistently get time out errors, adjust this parameter.

Example 21-4 Configure Maximum Time WebCenter Waits for Search Results

setSearchConfig(appName='webcenter',
                executionTimeout=10000)

For command syntax and examples, see the section, "setSearchConfig" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

21.5.4.1.2 Configuring Search Crawlers Using WLST

You can use WLST commands to create crawlers and to start, stop and delete crawler schedules post deployment. These commands let you crawl new data in Oracle SES or delete old crawlers if the configuration data changes.

Example 21-5 and Example 21-6 show some of these commands. For more information, see the section, "Search - Oracle SES Search Crawlers" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

Example 21-5 Create a WebCenter Documents Crawler in WLST

createDocumentsCrawler(
'portal', 'portal_host', 'portal_port',
'http://ses-host:ses-port/search/api/admin/AdminService', 'ses-admin-pw',
'http://ucm-host:ucm-port/cs/idcplg?IdcService=
SES_CRAWLER_DOWNLOAD_CONFIG&source=default', 'ucm-crawl-user',
'ucm-crawl-user-pw', '/tmp',
'http://ucm-host:ucm-port/cs/idcplg', 'http://ucm-host:ucm-port/cs',
'Idc Security /cs/idcplg', 'authentication-id-format', 'Document-pipeline',
'ACCEPT_ALL', 'PROCESS_CHANGED', 'MANUAL', 1, 1, 'MONDAY', 1, 1, 1, 1)

where:

  • portal = Name of the Portal application in which to perform this operation

  • portal_host = Host name of the system where the Portal application is running

  • portal_port = Port number used to access the Portal application

  • ses-host = Oracle SES host name

  • ses-port = Oracle SES port number

  • ses-admin-pw = Oracle SES admin user password

  • ucm-host = Oracle Content Server host name

  • ucm-port = Oracle Content Server port number

  • ucm-crawl-user = Oracle Content Server crawl user name

  • ucm-crawl-user-pw = Oracle Content Server crawl user password

  • authentication-id-format = Use 'nickname' if the Identity Management plug-in on Oracle SES is set to Oracle Internet Directory; otherwise, use the value of the Authentication Attribute parameter on the Identity Management plug-in on Oracle SES

  • Document-pipeline = Document pipeline on Oracle SES created for this WebCenter instance

Example 21-6 Create a WebCenter Discussions Crawler in WLST

createDiscussionsCrawler(
'webcenter','webcenter_host','webcenter_port',
'http://ses-host:ses-port/search/api/admin/AdminService', 'ses-admin-pw',
'jdbc:oracle:thin:@database-host:database-port:database-sid',
'Jive-crawler-schema','Jive-crawler-schema-pw', 'authentication-id-format',
'ACCEPT_ALL', 'PROCESS_ALL', 'MANUAL', 1, 1, 'MONDAY', 1, 1, 1, 1)

where:

  • webcenter_host = WebCenter host name

  • webcenter_port = WebCenter port number

  • ses-host = Oracle SES host name

  • ses-port = Oracle SES port number

  • ses-admin-pw = Oracle SES admin user password

  • database-host = Oracle WebCenter Discussions database host name

  • database-port = Oracle WebCenter Discussions database port number

  • database-sid = Oracle WebCenter Discussions database name or SID

  • Jive-crawler-schema = Oracle WebCenter Discussions crawler schema name. Determine the prefix from RCU, and use rcu-prefix_DISCUSSION_CRAWLER.

  • Jive-crawler-schema-pw = Oracle WebCenter Discussions crawler schema password

  • authentication-id-format = Use 'nickname' if the Identity Management plug-in on Oracle SES is set to Oracle Internet Directory; otherwise, use the value of the Authentication Attribute parameter on the Identity Management plug-in on Oracle SES.

Note:

To effect WLST changes, you must restart the managed server on which the WebCenter application is deployed (by default, WC_Spaces). For more information, see the section "Starting and Stopping WebLogic Managed Servers Using the Command Line" in Oracle Fusion Middleware Administrator's Guide.
21.5.4.1.3 Configuring Search Parameters and Crawlers Using Fusion Middleware Control

You can enable or disable Oracle SES search and configure search settings using Fusion Middleware Control.

  1. Log in to Fusion Middleware Control and navigate to the home page for your WebCenter application. For more information, see Section 6.2, "Navigating to the Home Page for WebCenter Spaces" or Section 6.3, "Navigating to the Home Page for WebCenter Portal Applications."

  2. From the WebCenter menu, choose Settings > Application Configuration.

  3. Select to enable the Oracle SES adapter or the default WebCenter adapters, and click Apply (Figure 21-16).

    Optionally, you can configure search parameters.

    • Oracle Secure Enterprise Search Data Group: Specify the Oracle SES source group in which to search. If no value is provided, then everything in the Oracle SES instance is searched.

    • Execution Timeout: Enter the maximum time that a service is allowed to execute a search (in ms).

    • Executor Preparation Timeout: Enter the maximum time that a service is allowed to initialize a search (in ms).

    • Results per Service - Saved Search Task Flows: Enter the number of search results displayed, per service, in a Saved Search task flow.

    • Results per Service - Search Page: Enter the number of search results displayed, per service, for searches submitted from the main search page. Users can click Show All if they want to see all the results.

    • Number of Saved Searches in Search Page: Enter the number of saved searches displayed in the Saved Search list (on the main search page).

    You do not need to restart the managed server on which the WebCenter application is deployed.

    Figure 21-16 Application Settings for Oracle Search

    Description of Figure 21-16 follows
    Description of "Figure 21-16 Application Settings for Oracle Search"

21.6 Configuring Oracle SES to Search WebCenter Spaces Applications

With WebCenter Spaces applications, internal WebCenter live search adapters are set as the default search platform; however, large-scale WebCenter implementations should be configured to use Oracle SES for best performance.

Note:

For an overview of the tasks that must be performed to enable Oracle SES as the search engine in WebCenter Spaces, see Section 21.2, "Configuration Roadmaps for Oracle SES in WebCenter." There may be various acceptable ways and orders to perform the required tasks.

This section describes the steps necessary to set up Oracle SES to search WebCenter Spaces:

21.6.1 Setting Up WebCenter for Oracle SES Search

This section describes how to configure WebCenter to work with Oracle SES.

  1. Create and configure the connection between WebCenter and Oracle SES, and optionally specifying a source group.

  2. To use Oracle SES to search Spaces, lists, or pages, you must first create a crawl admin user in WebCenter Spaces and in your back-end identity management server (for example, mycrawladmin). You must only create a crawl admin user once.

    Note:

    See your identity management system documentation for information on creating users.

    The following example uses Oracle Directory Services Manager to create the mycrawladmin user.

    1. On the Data Browser tab, navigate to the target cn and click Create. This example navigates to "dc=com,dc=oracle,dc=us,cn=Users". In the Add Object Class dialog, select the appropriate object class, and click OK. (Figure 21-17).

      Figure 21-17 Oracle Directory Services Manager - Add Object Class

      Description of Figure 21-17 follows
      Description of "Figure 21-17 Oracle Directory Services Manager - Add Object Class"

    2. Find the distinguished name (DN) path, and click Select (Figure 21-18). This example selects "dc=com,dc=oracle,dc=us,cn=Users".

      Figure 21-18 Oracle Directory Services Manager - Select DN Path

      Description of Figure 21-18 follows
      Description of "Figure 21-18 Oracle Directory Services Manager - Select DN Path"

    3. In the Create New Entry dialog, enter properties, and click Next (Figure 21-19).

      Figure 21-19 Oracle Directory Services Manager - Create New Entry

      Description of Figure 21-19 follows
      Description of "Figure 21-19 Oracle Directory Services Manager - Create New Entry"

    4. When you see that the new entry was created successfully, click Finish. (Figure 21-20)

      Figure 21-20 Oracle Directory Services Manager - Status

      Description of Figure 21-20 follows
      Description of "Figure 21-20 Oracle Directory Services Manager - Status"

  3. Create a crawl application role for WebCenter Spaces.

    1. See if the crawl application role exists with the following command:

      listAppRoles(appStripe='webcenter')
      

      For command syntax and examples, see the section, "listAppRoles" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

      The list may be very long. Look for 'webcenter#-#defaultcrawl' as a Principal Name in the results. For example:

        [ [Principal Clz Name : 
      oracle.security.jps.internal.core.principals.JpsApplicationRoleImpl, 
      Principal Name :webcenter#-#defaultcrawl, Type : APP_ROLE], Display Name : 
      Crawl Role. This role never gets updated by webcenter UIs., Description : 
      null, Guid : DA91B6572AF911DFBF70237926348A3B]
      

      If 'webcenter#-#defaultcrawl' does not exist, then you must create the crawl application role with the following WLST command:

      createAppRole(appStripe='webcenter', 
                    appRoleName='webcenter#-#defaultcrawl');
      

      For command syntax and examples, see the section, "createAppRole" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

      Then grant "view" permissions to WebCenter Spaces content as follows:

      grantPermission(appStripe="webcenter",
      principalClass="oracle.security.jps.service.policystore.ApplicationRole",
      principalName="webcenter#-#defaultcrawl",
      permClass="oracle.webcenter.community.model.security.CommunityPermission",
      permTarget="*", 
      permActions="view")
       
      grantPermission(appStripe="webcenter",
      principalClass="oracle.security.jps.service.policystore.ApplicationRole",
      principalName="webcenter#-#defaultcrawl",
      permClass="oracle.webcenter.relationship.model.security.RelationshipPermission", 
      permTarget="*",
      permActions="view")
       
      grantPermission(appStripe="webcenter",
      principalClass="oracle.security.jps.service.policystore.ApplicationRole",
      principalName="webcenter#-#defaultcrawl",
      permClass="oracle.webcenter.list.model.security.ListPermission",
      permTarget="*", 
      permActions="view")
       
      grantPermission(appStripe="webcenter",
      principalClass="oracle.security.jps.service.policystore.ApplicationRole",
      principalName="webcenter#-#defaultcrawl",
      permClass="oracle.webcenter.page.model.security.CustomPagePermission",
      permTarget="*", 
      permActions="view")
       
      grantPermission(appStripe="webcenter",
      principalClass="oracle.security.jps.service.policystore.ApplicationRole",
      principalName="webcenter#-#defaultcrawl",
      permClass="oracle.webcenter.page.model.security.PagePermission",
      permTarget="*", 
      permActions="view")
       
      grantPermission(appStripe="webcenter",
      principalClass="oracle.security.jps.service.policystore.ApplicationRole",
      principalName="webcenter#-#defaultcrawl",
      permClass="oracle.webcenter.note.model.security.NotePermission",
      permTarget="*",
      permActions="view")
       
      grantPermission(appStripe="webcenter",
      principalClass="oracle.security.jps.service.policystore.ApplicationRole",
      principalName="webcenter#-#defaultcrawl",
      permClass="oracle.webcenter.collab.calendar.model.security.EventPermission", 
      permTarget="*", 
      permActions="view")
      

      For command syntax and examples, see the section, "grantPermission" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

    2. Grant the crawl application role to the crawl admin user created in Section 21.3.2, "Oracle SES - Configuration." For example:

      grantAppRole(appStripe="webcenter",
                   appRoleName="webcenter#-#defaultcrawl",
                   principalClass="weblogic.security.principal.WLSUserImpl",
                   principalName="mycrawladmin");
      

      For command syntax and examples, see the section, "grantAppRole" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

      Note:

      To effect WLST changes, you must restart the managed server on which the WebCenter application is deployed (by default, WC_Spaces). For more information, see the section "Starting and Stopping WebLogic Managed Servers Using the Command Line" in Oracle Fusion Middleware Administrator's Guide.
  4. Enable the Oracle SES crawlers in WebCenter.

    With the same WLST command, you can set crawler properties (that is, enable/disable the crawlers) and specify an interval between full crawls for the WebCenter Spaces crawler. By default, full crawls for the WebCenter Spaces crawler occur every seven days, but you can specify a different frequency. (Incremental crawls are initiated by the schedule set in Oracle SES.)

    For example:

    setSpacesCrawlProperties(appName='webcenter', 
                             fullCrawlIntervalInHours=168, 
                             spacesCrawlEnabled = true, 
                             documentCrawlEnabled=true,          
                             discussionsCrawlEnabled=true)
    

    Notes:

    The spacesCrawlEnabled, documentCrawlEnabled and discussionsCrawlEnabled parameters all must be set to true to enable Oracle SES search.

    A clustered instance additionally requires the server parameter; for example, server="WC_Spaces1".

    The following example specifies that WebCenter Spaces runs a full crawl through the WebCenter Spaces crawler every 8 days.

    setSpacesCrawlProperties(appName='webcenter',fullCrawlIntervalInHours=192)
    

    You also can use WLST to return the current crawl settings for WebCenter, such as the number of hours between full crawls (WebCenter Spaces crawler). For example, the following command returns the current crawl settings for WebCenter Spaces.

    getSpacesCrawlProperties(appName='webcenter')
    
    WebCenter Spaces Crawl Properties:
    -----------------
    fullCrawlIntervalInHours: 124
    spacesCrawlEnabled:       true
    documentCrawlEnabled:     true
    discussionsCrawlEnabled:  true
    
  5. Use the listDocumentsSpacesProperties command to determine the unique name that the back-end Oracle Content Server is using to identify this WebCenter application and the connection name for the primary Oracle Content Server that WebCenter is using to store documents. For example:

    listDocumentsSpacesProperties(appName='webcenter')
    

    The response should looks something like the following:

    The Documents Spaces container is "/WebCenter1109"
    The Documents repository administrator is "sysadmin"
    The Documents application name is "WC1109"
    The Documents primary connection is "stxxl18-ucm11g"
    

    Note:

    Record the application name and the primary connection returned. These values are required later (in Section 21.6.4.2, "Setting Up Oracle SES to Search Documents") to set up Oracle SES to crawl WebCenter documents.

    Note:

    To effect WLST changes, you must restart the managed server on which the WebCenter application is deployed (by default, WC_Spaces). For more information, see the section "Starting and Stopping WebLogic Managed Servers Using the Command Line" in Oracle Fusion Middleware Administrator's Guide.

21.6.1.1 Configuring Search Parameters Using WLST

Use the WLST command setSearchConfig to modify search parameters.

Example 21-7 shows how to specify a data group (also known as source group) under which you search Oracle SES.

Example 21-7 Set a Source Group

setSearchSESConfig(appName='webcenter',
                   dataGroup='MySources')

where dataGroup is the source group you create in Section 21.5.3.4, "Additional Oracle SES Configuration" (for WebCenter Portal applications) or in Section 21.6.4.6, "Additional Oracle SES Configuration" (for WebCenter Spaces applications).

Example 21-8 shows how to increase the number of search results displayed. Five is the default setting for the number of search results displayed in Oracle SES results, but result sets generally are larger than five.

Example 21-8 Increase Number of Search Results Displayed

setSearchConfig(appName='webcenter',
                numResultsMain=10)

Example 21-9 shows how to configure the maximum time that a service is allowed to execute a search (in ms). When a service times out largely depends on the system load. If you consistently get time out errors, adjust this parameter.

Example 21-9 Configure Maximum Time WebCenter Waits for Search Results

setSearchConfig(appName='webcenter',
                executionTimeout=10000)

For command syntax and examples, see the section, "setSearchConfig" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

21.6.1.2 Configuring Search Parameters and Crawlers Using Fusion Middleware Control

You can enable or disable Oracle SES search and configure search settings using Fusion Middleware Control.

  1. Log in to Fusion Middleware Control and navigate to the home page for your WebCenter application. For more information, see Section 6.2, "Navigating to the Home Page for WebCenter Spaces" or Section 6.3, "Navigating to the Home Page for WebCenter Portal Applications."

  2. From the WebCenter menu, choose Settings > Application Configuration.

  3. Select to enable the Oracle SES adapter or the default WebCenter adapters, and click Apply (Figure 21-21).

    You can specify an interval between full crawls for the WebCenter Spaces crawler. By default, full crawls for the WebCenter Spaces crawler occur every seven days, but you can specify a different frequency. (Incremental crawls, for all three crawlers, are initiated by the schedule set in Oracle SES.)

    Optionally, you can configure search parameters.

    • Oracle Secure Enterprise Search Data Group: Specify the Oracle SES source group in which to search. If no value is provided, then everything in the Oracle SES instance is searched.

    • Execution Timeout: Enter the maximum time that a service is allowed to execute a search (in ms).

    • Executor Preparation Timeout: Enter the maximum time that a service is allowed to initialize a search (in ms).

    • Results per Service - Saved Search Task Flows: Enter the number of search results displayed, per service, in a Saved Search task flow.

    • Results per Service - Search Page: Enter the number of search results displayed, per service, for searches submitted from the main search page. Users can click Show All if they want to see all the results.

    • Number of Saved Searches in Search Page: Enter the number of saved searches displayed in the Saved Search list (on the main search page).

    You do not need to restart the managed server on which the WebCenter application is deployed.

    Figure 21-21 Application Settings for WebCenter Search

    Search crawlers
    Description of "Figure 21-21 Application Settings for WebCenter Search"

21.6.2 Setting Up Oracle Content Server for Oracle SES Search

This section describes how to configure Oracle Content Server to be crawlable by Oracle SES (in particular, the Oracle Content Server that WebCenter uses for storing documents).

The following steps must be done from within Oracle Content Server.

  1. Create the role sescrawlerrole.

  2. Create the user sescrawler, and assign it the admin role and the sescrawlerrole role. This user creates the Oracle Content Server source in Oracle SES.

  3. Add sceCrawlerRole=sescrawlerrole to config.cfg.

  4. Restart Oracle Content Server.

  5. In the Oracle Content Server console, install the SESCrawlerExport component on the content server, if not done:

    1. Log on to Oracle Content Server as a system administrator. For example: http://host:port/cs.

    2. From the Administration dropdown menu, select Admin Server (Figure 21-22).

      Figure 21-22 Oracle Content Server Administration

      Description of Figure 21-22 follows
      Description of "Figure 21-22 Oracle Content Server Administration"

    3. Click the button with the instance name.

    4. Click Component Manager from the menu list on the left pane (Figure 21-23).

      Figure 21-23 Oracle Content Server Component Manager

      Description of Figure 21-23 follows
      Description of "Figure 21-23 Oracle Content Server Component Manager"

    5. Select SESCrawlerExport under Integration and click Update.

    6. Enter configuration parameters. (You can change configuration parameters after installation.)

      Disable security on authentication and authorization APIs provided by the SESCrawlerExport; that is, set Disable Secure APIs to false. This lets security provided by the SESCrawlerExport be done internally instead of by the content server.

      Additionally, in clustered environments only, the feedLoc parameter must specify a location on the shared disk accessed by the nodes of content server, and they each must reference it the same way; for example, sharedDrive/dir1/dir2. Note that this is not the default location (relative path) provided.

    7. Restart Oracle Content Server.

  6. Take a snapshot of the Oracle Content Server repository.

    1. Log on to Oracle Content Server as a system administrator. For example: http://host:port/cs.

    2. From the Administration dropdown menu, select SESCrawlerExport.

    3. Select All sources, and click Take Snapshot (Figure 21-24).

      Figure 21-24 Oracle Content Server Snapshot

      Description of Figure 21-24 follows
      Description of "Figure 21-24 Oracle Content Server Snapshot"

      It is important to take a snapshot before the first crawl or any subsequent full crawl of the source.

      The snapshot generates configFile.xml at the location specified during component installation, and feeds are created at the subdirectory with the source name under feedLoc.

For detailed information on Oracle Content Server configuration, see the Deployment Guide.pdf included with the product.

21.6.3 Setting Up Oracle WebCenter Discussions for Oracle SES Search

This section describes how to configure Oracle WebCenter Discussions to be crawlable by Oracle SES (in particular, the Oracle WebCenter Discussions Server that WebCenter uses for storing discussions and announcements).

Note:

These steps is not required if you have a new installation of WebCenter (with an Oracle database) and Oracle WebCenter Discussions. It is only required if you are using upgraded (patched) instances.

You can find database schema details for the corresponding data sources from your Oracle WebLogic Server console.

  1. Run the Repository Creation Utility (RCU) to confirm that the Discussions Crawler WebCenter component has been installed on the system.

    • Oracle and Microsoft SQL Server databases:

      Verify that the Oracle WebCenter Discussions back end has been configured properly by noting that the MyPrefix_DISCUSSIONS user is installed in RCU.

      Then verify that the Oracle WebCenter Discussions Crawler has been configured properly by noting that the MyPrefix_DISCUSSIONS_CRAWLER user is installed in RCU.

    • IBM DB2 databases:

      Verify that the Oracle WebCenter Discussions back end has been configured properly by noting that the MyPrefix_DS user is installed in RCU. Then verify that the Oracle WebCenter Discussions Crawler has been configured properly by noting that the MyPrefix_DC user is installed in RCU.

      Note:

      For IBM DB2 databases, MyPrefix is limited to five characters. IBM DB2 uses operating system users for authentication (that is, the database user is actually an operating system user). Because some operating systems have an eight character limit for user names, this requires an eight character user name.

    If the Discussions Crawler component is not installed, then you must install it using RCU, selecting the same prefix that was used for the Oracle WebCenter Discussions component. Also, during the tablespace specification step in RCU, select Prefix_IAS_DISCUSSIONS as the default tablespace. This installs the user for Oracle SES.

    For more information, see Chapter 7, "Deploying WebCenter Applications."

  2. Run the following tool to upgrade the data in the Oracle WebCenter Discussions database schema, if you have not run the tool yet:

    java -jar \
    $MW_HOME/discussionserver/discussionserver-upgradeforses.jar \
    <command_line_parameters>
    

    where command_line_parameters are the following MDS schema details and discussions database schema details:

    -mds_jdbc_user user_id \ 
    -mds_jdbc_password password \
    -mds_jdbc_url url \
    -discussions_jdbc_user user_id \
    -discussions_jdbc_password password \
    -discussions_jdbc_url url
    

    where mds_jdbc_user, mds_jdbc_password, and mds_jdbc_url are the values to log in to the MDS schema, and discussions_jdbc_user, discussions_jdbc_password, and discussions_jdbc_url are the values to log in to the discussions database schema.

    For example:

    java -jar $MW_HOME/as11r1wc/discussionserver/discussionserver-upgradeforses.jar\
    -mds_jdbc_user foo \ 
    -mds_jdbc_password welcome1 \ 
    -mds_jdbc_url jdbc:oracle:thin:@host:port:SID \
    -discussions_jdbc_user foo \ 
    -discussions_jdbc_password welcome1 \ 
    -discussions_jdbc_url jdbc:oracle:thin:@host:port:SID
    

21.6.4 Setting Up Oracle SES to Search WebCenter

The steps in this section must be performed in the Oracle SES administration tool.

The following steps are required:

  1. Section 21.6.4.1, "Logging on to the Oracle SES Administration Tool"

  2. Section 21.6.4.2, "Setting Up Oracle SES to Search Documents"

  3. Section 21.6.4.3, "Setting Up Oracle SES to Search Discussions and Announcements"

  4. Section 21.6.4.4, "Setting Up Oracle SES to Search Spaces, Lists, Pages, and People"

  5. Section 21.6.4.6, "Additional Oracle SES Configuration"

See Also:

Confirm that you have installed all required patches for Oracle SES. For the latest information on required patches, see "Back-End Requirements for the Search Service" in Oracle Fusion Middleware Installation Guide for Oracle WebCenter and the Release Notes.

For detailed information about Oracle SES configuration, see the Oracle SES documentation included with the product. (This is listed in the WebCenter product area on the Oracle Fusion Middleware documentation library.)

21.6.4.1 Logging on to the Oracle SES Administration Tool

Open the Oracle SES administration tool:

  1. Open a browser and enter the URL provided after the installation. (This has the form http://host:port/search/admin/index.jsp.)

  2. Log on with the Oracle SES admin user name eqsys and the password specified during installation.

21.6.4.2 Setting Up Oracle SES to Search Documents

To search WebCenter documents using Oracle SES, you must first set up a Document Service Manager (with a Document Service Instance and a Document Service Pipeline), and then create an Oracle Content Server source.

  1. Configure the Document Service Manager (one time for each Oracle SES instance).

    Note:

    Document services are plug-ins involved in the processing of a document when it is being crawled. A document service allows WebCenter to add indexable attributes for documents used in a WebCenter application.
    1. On the Global Settings - Document Services page, click Create. Select Create New Manager, click Next, and enter the following parameters:

      Manager Class Name: oracle.webcenter.search.crawl.ucm.ses.WcUcmDsManager

      Manager Jar File Name: search-crawl-ucm.jar

      Note:

      The webcenter_search_ses_plugins.zip file installs Oracle_Home/search/lib/plugins/doc/search-crawl-ucm.jar. For more information, see Section 21.3.1, "Oracle SES - Installation."

      Click Next, and then click Finish (Figure 21-25).

      Figure 21-25 Creating a Document Services Manager in Oracle SES

      Description of Figure 21-25 follows
      Description of "Figure 21-25 Creating a Document Services Manager in Oracle SES"

    2. Create the Document Service Instance.

      Again, on the Global Settings - Document Services page, click Create. This time, select Select From Available Managers with Secure Enterprise Search WebCenter UCM Plugin, and click Next (Figure 21-26).

      Figure 21-26 Create Document Service

      Description of Figure 21-26 follows
      Description of "Figure 21-26 Create Document Service"

      In addition to the entering an instance name, enter the following parameters:

      WebCenter Application Name: The unique name being used to identify this WebCenter application in the back-end Oracle Content Server.

      Connection Name: The name of the primary Oracle Content Server connection that WebCenter is using to store Space documents.

      WebCenter URL Prefix: The host and port where the WebCenter application is deployed, plus the context root; for example: http://myhost:8888/DocumentServer.

      Note:

      Use the listDocumentsSpacesProperties command to determine the application name and connection name for WebCenter Spaces, as described in Section 21.6.1, "Setting Up WebCenter for Oracle SES Search."
    3. Create the Document Services Pipeline. This invokes the document service instance.

      Again, on the Global Settings - Document Services page, under the Document Services Pipelines section, click Create.

      Enter a name and select the instance created in the previous step.

  2. Create the Oracle Content Server source for documents.

    See Also:

    Section 21.6.5, "Configuring Search Crawlers Using WLST" for an alternative way to create the Oracle Content Server source
    1. Go to Home > Sources.

    2. From the Source Type dropdown list, select Oracle Content Server, and click Create (Figure 21-27).

      Figure 21-27 Create Oracle Content Server Source

      Description of Figure 21-27 follows
      Description of "Figure 21-27 Create Oracle Content Server Source"

    3. Enter the following parameters:

      Source Name: unique_name

      Configuration URL: Content_Server_SES_Crawler_Export_endpoint; for example, http://host:port/cs/idcplg?IdcService=SES_CRAWLER_DOWNLOAD_CONFIG&source=default

      Note:

      The source=default parameter denotes the name of the source created in the configuration of the SES Crawler Export. The default one is created automatically and called "default."

      Authentication Type:

      If Oracle Content Server is not protected by SSO, then enter NATIVE.

      If Oracle Content Server is protected by Oracle SSO, then enter ORASSO.

      User ID: This user to crawl Oracle Content Server must have the sceCrawlerRole role defined. The sceCrawlerRole is a configuration parameter in SESCrawlerExport. Typically, administrators create a special role, assign it no privileges to view content, then create a user account that has this role.

      If you do not set up a specific sceCrawlerRole, then admin credentials are required to crawl. The sysadmin user ID works by default.

      If Authentication Type is ORASSO, then enter a user ID (and password) of a user in the identity management server fronted by Oracle SSO. This user must have been granted the same permissions as sysadmin. If it is not possible to grant those permissions, then delete the "remote" user corresponding to this user in Oracle Content Server, and create a "local" version of the user (same name) in Oracle Content Server.

      Password: Password for this Oracle Content Server user.

      Realm:

      If Authentication Type is NATIVE, then enter Idc Security /cs/idcplg, where /cs/ is the context root you provided when you installing Oracle Content Server.

      If Authentication Type is ORASSO, then leave this parameter blank.

      Scratch Directory: Optional. Specify a directory on the system under which the Oracle SES instance resides.

      Oracle SSO Login URL:

      If Authentication Type is ORASSO, then specify a value for Oracle SSO. For example: https://login.oracle.com/mysso/signon.jsp?site2pstoretoken=

      If Authentication Type is NATIVE, then leave this field blank.

      Oracle SSO Action URL:

      If Authentication Type is ORASSO, then specify a value for Oracle SSO. For example: https://login.oracle.com/sso/auth

      If Authentication Type is NATIVE, then leave this field blank.

      Click Next (Figure 21-28).

      Figure 21-28 Oracle Content Server Source Parameters

      Description of Figure 21-28 follows
      Description of "Figure 21-28 Oracle Content Server Source Parameters"

    4. On the Create User-Defined Source : Step 2 : Authorization page, enter the following parameters in the Authorization Manager section, if not entered by default:

      Plug-in Class Name: oracle.search.plugin.security.auth.stellent.StellentAuthManager

      Jar File Name: oracleapplications/StellentCrawler.jar

      HTTP endpoint for authorization: for example, http://host:port/cs/idcplg

      Display URL Prefix: for example, http://host:port/cs

      Authentication Type: NATIVE or ORASSO

      Administrator User: This user to crawl Oracle Content Server must have the sceCrawlerRole role defined. The sceCrawlerRole is a configuration parameter in SESCrawlerExport. Typically, administrators create a special role, assign it no privileges to view content, then create a user account that has this role.If you do not set up a specific sceCrawlerRole, then admin credentials are required to crawl. The sysadmin user ID works by default.

      If Authentication Type is ORASSO, then enter a user ID (and password) of a user in the identity management server fronted by Oracle SSO. This user must have been granted the same permissions as sysadmin. If it is not possible to grant those permissions, then delete the "remote" user corresponding to this user in Oracle Content Server, and create a "local" version of the user (same name) in Oracle Content Server.

      Administrator Password: Password for crawl admin user

      Authorization User ID Format: Authentication attribute used in the active identity plug-in. To find this value, go to the Global Settings - Identity Management Setup page in Oracle SES. Enter the value of the Authentication Attribute under the Active Plug-in (for example, nickname or username or something else). If you are using the Oracle E-Business Suite R12 identity plug-in, then leave the this parameter blank.

      Realm:

      If Authentication Type is NATIVE, then enter Idc Security /cs/idcplg, where /cs/ is the context root you provided when you installing Oracle Content Server.

      In Authentication Type is ORASSO, then leave this field blank.

    5. Click Create & Customize (or edit a created source) to see other source parameters. On the Crawling Parameters tab, enter the following crawling parameter: Document Service Pipeline.

    6. Click Enable and select the pipeline you created.

21.6.4.3 Setting Up Oracle SES to Search Discussions and Announcements

To search WebCenter discussions and announcements using Oracle SES, you must first set up two Oracle SES Database sources: one for discussions and one for announcements. For example, the discussions source could have the source name GS_Discussions and a View of FORUMCRAWLER_VW, and the announcements source might have the source name GS_Announcements and a View of ANNOUNCEMENTS_VW.

Note:

There are slightly different steps for Oracle, Microsoft SQL Server, and IBM DB2 databases.
  1. Configure the JDBC driver:

    1. To crawl a Microsoft SQL Server or IBM DB2 database, download the appropriate JDBC driver jar files into the ORACLE_HOME/search/lib/plugins/oracleapplications directory in Oracle SES.

      Note:

      • For Microsoft SQL Server: Copy the Microsoft JDBC driver files sqljdbc.jar and sqljdbc4.jar.

      • DB2: Copy the IBM driver files db2jcc.jar and db2jcc_license_cu.jar (obtainable from the IBM DB2 UDB client).

      If the JDBC drivers for JRE 1.5 and JRE 1.6 are different, (for example: sqljdbc.jar works for JRE 1.5 and sqljdbc4.jar works for JRE 1.6), then perform the following:

      - Download both the driver jars into the ORACLE_HOME/search/lib/plugins/oracleapplications directory in Oracle SES.

      - Add an entry for the JRE 1.6 version (sqljdbc4.jar for SQLServer) of the driver jar to the CLASSPATH element of ORACLE_HOME/search/config/searchctl.conf.

      - Restart the middle tier.

    2. Update the drivers.properties file with the following information: DatabaseName:DriverClassName.

    3. Add the JRE 1.5 JDBC driver jar file name to the classpath in META-INF/MANIFEST.MF of appsjdbc.jar and DBCrawler.jar.

      For example, change:

      Class-Path:  sqljdbc.jar rsscrawler.jar  ../../pluginmessages.jar
      

      to

      Class-Path:  db2jcc.jar sqljdbc.jar rsscrawler.jar  ../../pluginmessages.jar
      

      and change:

      Class-Path: appsjdbc.jar
      

      to

      Class-Path: db2jcc.jar appsjdbc.jar
      

    For a key attribute that is not named KEY, change the JDBC driver information in the drivers.properties file to specify the key attribute name: database_name: driver_class_name, key_attribute_name

    For example, for a key attribute named ID:

    oracle : oracle.jdbc.driver.OracleDriver, ID
    

    In the crawling query, use key_attribute_name as the alias for the key value column name. In this example, ID is the alias for KEYVAL:

    SELECT keyval id, content, url, lastmodifieddate, lang FROM sales_only
    

    Oracle and SQL Server databases: The following default drivers are used if none is specified in drivers.properties:

    • Oracle: oracle.jdbc.driver.OracleDriver

    • SQL Server: com.microsoft.sqlserver.jdbc.SQLServerDriver

  2. Required for IBM DB2 databases only:

    1. Make sure that no crawlers are running that use the database crawler source. In the Oracle SES administration tool, check the crawler progress and status on the Home - Schedules page. (Click Refresh Status.)

    2. Remake the appsjdbc.jar file and the DBCrawler.jar file. Ensure that the META-INF/MANIFEST.MF was updated correctly; otherwise, the crawler fails with the following error in the crawler log file:

      EQP-80406: Loading JDBC driver failed
      
    3. Modify the Oracle_Home/search/lib/plugins/oracleapplications/drivers.properties file to include the following line:

      db2: com.ibm.db2.jcc.DB2Driver
      
    4. Include the driver jar (db2jcc.jar) to the CLASSPATH element of ORACLE_HOME/search/config/searchctl.conf. For example:

      #CLASS PATH
      CLASSPATH=ORACLE_HOME/search/webapp/config:ORACLE_HOME/search/webapp/
      SESAuthenticator.jar:ORACLE_HOME/search/lib/plugins/commons-plugins-
      stubs.jar :ORACLE_HOME /search/lib/plugins/oracleapplications/db2jcc.jar
      
    5. Edit JVM_OPTIONS in the $ORACLE_HOME/search/config/searchctl.conf file to add the system property "-Doracle.home=ORACLE_HOME/search". For example:

      JVM_OPTIONS= -Djava.awt.headless=true
      -Dweblogic.RootDirectory=ORACLE_HOME/search/base_domain
      -Doracle.home=ORACLE_HOME/search
      
    6. Copy the $ORACLE_HOME/search/lib/plugins/oracleapplications/pluginmessages.jar file to the $ORACLE_HOME/search/lib directory.

    7. Create the database source. Make sure to enter the correct authorization query and confirm that the attribute name used in Grant Security Attributes matches the one used in the authorization query; otherwise, users do not get any results when searching for documents.

  3. Create a Discussions source or an Announcements source.

    See Also:

    Section 21.6.5, "Configuring Search Crawlers Using WLST" for an alternative way to create these sources
    1. In Oracle SES, go to Home > Sources.

    2. From the Source Type dropdown list, select Database, and click Create (Figure 21-29).

      Figure 21-29 Create Database Source

      Description of Figure 21-29 follows
      Description of "Figure 21-29 Create Database Source"

    3. Enter the following parameters:

      Source Name: unique_name; for example, GS_Discussions to crawl discussions (or GS_Announcements to crawl announcements)

      Database Connection String: Enter one of the following

      - Oracle database: Enter one of the following

      jdbc:oracle:thin:@host:port:sid

      jdbc:oracle:thin@host:port/serviceId

      - IBM DB2 database: Enter jdbc:db2://host:port/database_name

      - Microsoft SQL Server database: Enter jdbc:sqlserver://host_or_IP_address:port;database_name

      User ID: Enter one of the following

      - Oracle database: The user MyPrefix_DISCUSSIONS_CRAWLER created during Oracle WebCenter Discussions installation

      - Microsoft SQL Server database: The user MyPrefix_DISCUSSIONS_CRAWLER created during Oracle WebCenter Discussions installation

      - IBM DB2 database: The user MyPrefix_DC created during Oracle WebCenter Discussions installation (where MyPrefix is five characters)

      Password: Password for this user

      Query: Enter one of the following queries:

      SELECT * FROM FORUMCRAWLER_VW
      SELECT * FROM ANNOUNCECRAWLER_VW
      

      Use FORUMCRAWLER_VW for the source crawling discussion forums.

      Use ANNOUNCECRAWLER_VW for the source crawling announcements.

      URL Prefix: The URL prefix for the WebCenter application, including host, port, and application name. For example, http://host:port/webcenter for Webcenter Spaces.

      Grant Security Attributes: WCSECATTR

      Note:

      Previous releases of Oracle Content Server used FORUMID for Grant Security Attributes.
    4. Click Next.

    5. On the Create User-Defined Source : Step 2 : Authorization page, enter the following parameters (if not prepopulated) in the Authorization Manager section:

      Plug-in Class Name: oracle.search.plugin.security.auth.db.DBAuthManager

      Jar File Name: oracleapplications/DBCrawler.jar

      Authorization Database Connection String: Enter one of the following:

      - Oracle database: Enter one of the following:

      jdbc:oracle:thin:@host:port:sid

      jdbc:oracle:thin@host:port/serviceId

      - IBM DB2 database: Enter jdbc:db2://host:port/database_name

      - Microsoft SQL Server database: Enter jdbc:sqlserver://host_or_IP_address:port;database_name

      User ID: Enter one of the following:

      - Oracle database: Enter the user MyPrefix_DISCUSSIONS_CRAWLER

      - Microsoft SQL Server database: Enter the user MyPrefix_DISCUSSIONS_CRAWLER

      - IBM DB2 database: Enter the user MyPrefix_DC (where MyPrefix is five characters)

      Password: This user password

      Single Record Query: false

      Authorization Query: Enter the following (on one line):

      SELECT DISTINCT forumID as WCSECATTR 
      FROM AUTHCRAWLER_FORUM_VW 
      WHERE username = ? UNION SELECT DISTINCT -1 as WCSECATTR 
      FROM AUTHCRAWLER_FORUM_VW
      

      Note:

      Previous releases of Oracle Content Server used the following authorization query:
      SELECT forumID 
      FROM AUTHCRAWLER_FORUM_VW 
      WHERE (username = ? or userID=-1) 
      UNION SELECT f.forumID 
      FROM jiveForum f, AUTHCRAWLER_CATEGORY_VW c 
      WHERE f.categoryID = c.categoryID AND (c.username =  ? or userID=-1) 
      

      Authorization User ID Format: Authentication attribute used in the active identity plug-in. To find this value, go to the Global Settings - Identity Management Setup page in Oracle SES. Enter the value of the Authentication Attribute under the Active Plug-in (for example, nickname or username or something else).

      If you are using the Oracle E-Business Suite R12 identity plug-in, then leave the this parameter blank.

    6. Click Create to complete the source creation.

21.6.4.4 Setting Up Oracle SES to Search Spaces, Lists, Pages, and People

This section describes how to create the Oracle WebCenter source.

See Also:

Section 21.6.5, "Configuring Search Crawlers Using WLST" for an alternative way to create the Oracle WebCenter source
  1. Go to the Home > Sources page.

  2. From the Source Type dropdown list, select the Oracle WebCenter source type, and click Create (Figure 21-30).

    Figure 21-30 Create Oracle WebCenter Source

    Description of Figure 21-30 follows
    Description of "Figure 21-30 Create Oracle WebCenter Source"

  3. Enter the following source parameters:

    Note:

    If WebCenter is fronted with an Oracle HTTP Server, then the Configuration URL used in this step requires the following in mod_wl_ohs.conf file.

    In a non-clustered environment:

    <Location /rsscrawl>
    SetHandler weblogic-handler
    WebLogicHost host_name
    WeblogicPort port
    </Location>
     
    <Location /sesUserAuth>
    SetHandler weblogic-handler
    WebLogicHost host_name
    WeblogicPort port
    </Location>
    

    In a clustered environment:

    <Location /rsscrawl>
    WebLogicCluster host_name1:port,host_name2:port
    SetHandler weblogic-handler
    </Location>
     
    <Location /sesUserAuth>
    WebLogicCluster host_name1:port,host_name2:port
    SetHandler weblogic-handler
    </Location>
    

    where host_name1 and host_name2 are the cluster nodes, and port is the listening port number of the managed server on which the WebCenter application is deployed.

    See Also:

    Section 30.2.3.1, "Installing and Configuring OAM 11g" for detailed information about using WebCenter with Oracle Access Manager

    Source Name: unique_name

    Configuration URL: host:port_of_WebCenterSpaces/rsscrawl; for example, http://myhost:8888/rsscrawl

    Authentication Type: BASIC

    User ID: Crawl admin user you registered in Section 21.3.2, "Oracle SES - Configuration"; for example, mycrawladmin

    Password: Password for the crawl admin user

    Realm: jazn.com

    Oracle SSO Login URL: Leave this field blank.

    Oracle SSO Action URL: Leave this field blank.

    Scratch Directory: Optional. Specify a directory on the system under which the Oracle SES instance resides.

    Number of connection attempts: Maximum number of connection attempts to access data feed or upload status feed.

    Click Next (Figure 21-31).

    Figure 21-31 Oracle WebCenter Source Parameters

    Description of Figure 21-31 follows
    Description of "Figure 21-31 Oracle WebCenter Source Parameters"

  4. On the Create User-Defined Source : Step 2 : Authorization page, the Plug-in Class Name, Jar File Name, and Authorization Endpoint are prepopulated on the page.

    Enter the following plug-in parameters:

    Realm: jazn.com

    User ID: Crawl admin user you registered Section 21.3.2, "Oracle SES - Configuration"; for example, mycrawladmin

    Password: Password for the crawl admin user

    Authorization User ID Format: Authentication attribute used in the active identity plug-in. To find this value, go to the Global Settings - Identity Management Setup page in Oracle SES. Enter the value of the Authentication Attribute under the Active Plug-in (for example, nickname or username or something else). If you are using the Oracle E-Business Suite R12 identity plug-in, then leave the this parameter blank.

  5. Click Create to complete the source creation.

21.6.4.5 Excluding Services from the WebCenter Spaces Crawler

The Oracle WebCenter Spaces Crawler collects data for searching the following WebCenter services:

  • oracle.webcenter.peopleconnections.profile (People Connections)

  • oracle.webcenter.community (Spaces)

  • oracle.webcenter.page (Pages)

  • oracle.webcenter.list (Lists)

Use the URL parameter ?excludedServiceIds to disable search for any of these services. Add ?excludedServiceIds after /rsscrawl when setting up the Oracle WebCenter source on Oracle SES. Set this parameter equal to the comma-delimited list of service IDs to exclude when crawling WebCenter Spaces.

Example 21-10 Disable Crawling of People Connections

/rsscrawl?excludedServiceIds=oracle.webcenter.peopleconnections.profile

Example 21-11 Disable Crawling of Pages

/rsscrawl?excludedServiceIds=oracle.webcenter.page

Example 21-12 Disable Crawling of People Connections and Pages

/rsscrawl?excludedServiceIds=oracle.webcenter.peopleconnections.profile,oracle.webcenter.page

21.6.4.6 Additional Oracle SES Configuration

This section describes the required steps in the Oracle SES administration tool.

  1. Create a source group that includes the names of the Oracle Content Server, Discussions, Announcements, and WebCenter services sources you created.

    1. Go to the Search - Source Groups page, and click Create.

    2. Enter the same source group name entered in Section 21.6.1, "Setting Up WebCenter for Oracle SES Search."

    3. From the Select Source Type dropdown list, select each source type (Database, Oracle Content Server, Oracle WebCenter), and then from the Available Sources listed for each source type, move the source you created for that source type into the Assigned Sources list.

    4. Click Finish.

  2. Optionally configure the security filter lifespan. This refreshes the authorization policies for users in the system. It is best to have a short lifespan when user policies change frequently. (This chapter uses Oracle Internet Directory identity plug-in as the example.)

    For example, on the Global Settings - Query Configuration page, under Secure Search Configuration, enter 0 for Security Filter Lifespan (minutes).

    Valid values for the security filter lifespan are between 0 minutes (no cache) and 526500 minutes (cache for one year).

  3. To index everything, you must force a full crawl for each source; that is, you must change the existing incremental crawl schedule for each source to first process ALL documents.

    This step is very important, in that searching does not work unless the content is first indexed completely.

    Note:

    You can set the schedule for the Oracle WebCenter Spaces Crawler with the fullCrawlIntervalInHours parameter in WLST or the Full Crawl Interval parameter in Fusion Middleware Control.

    Go to the Home - Schedules page, select the source schedule, and click Edit to force a full crawl.

    After each source has been crawled, go back to the same page and change the crawl policy back to incremental (index documents that have changed since the previous crawl). Also, in the Frequency section of the page, select a non-manual type for running incremental crawl (for example, weekly or daily).

    Note:

    Before the first crawl of Oracle Content Server, remember to go to the Oracle Content Server Administration page, select SES Crawler Export, and take a snapshot. For more information, see Section 21.6.2, "Setting Up Oracle Content Server for Oracle SES Search."

21.6.5 Configuring Search Crawlers Using WLST

You can use WLST commands to create crawlers and to start, stop and delete crawler schedules. These commands let you crawl new data in Oracle SES or delete old crawlers if the configuration data changes.

The following examples show some of these commands. For more information, see the section, "Search - Oracle SES Search Crawlers" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

Example 21-13 Create a WebCenter Spaces Crawler in WLST

createSpacesCrawler(
'webcenter', 'webcenter_host', 'webcenter_port',
'http://ses-host:ses-port/search/api/admin/AdminService', 'ses-admin-pw',
'webcenter-crawl-user', 'webcenter-crawl-user-pw', '/tmp', 'authentication-id-format', 'ACCEPT_ALL', 'PROCESS_ALL', 'MANUAL', 1, 1, 
'MONDAY', 1, 1, 1, 1)

where:

  • webcenter_host = WebCenter host name

  • webcenter_port = WebCenter port number

  • ses-host = Oracle SES host name

  • ses-port = Oracle SES port number

  • ses-admin-pw = Oracle SES admin user password

  • webcenter-crawl-user = WebCenter crawl user name

  • webcenter-crawl-user-pw = WebCenter crawl user password

  • authentication-id-format = Use 'nickname' if the Identity Management plug-in on Oracle SES is set to Oracle Internet Directory; otherwise, use the value of the Authentication Attribute parameter on the Identity Management plug-in on Oracle SES.

Example 21-14 Create a WebCenter Documents Crawler in WLST

createDocumentsCrawler(
'portal', 'portal_host', 'portal_port',
'http://ses-host:ses-port/search/api/admin/AdminService', 'ses-admin-pw',
'http://ucm-host:ucm-port/cs/idcplg?IdcService=
SES_CRAWLER_DOWNLOAD_CONFIG&source=default', 'ucm-crawl-user',
'ucm-crawl-user-pw', '/tmp',
'http://ucm-host:ucm-port/cs/idcplg', 'http://ucm-host:ucm-port/cs',
'Idc Security /cs/idcplg', 'authentication-id-format', 'Document-pipeline',
'ACCEPT_ALL', 'PROCESS_CHANGED', 'MANUAL', 1, 1, 'MONDAY', 1, 1, 1, 1)

where:

  • portal = Name of the Portal application in which to perform this operation

  • portal_host = Host name of the system where the Portal application is running

  • portal_port = Port number used to access the Portal application

  • ses-host = Oracle SES host name

  • ses-port = Oracle SES port number

  • ses-admin-pw = Oracle SES admin user password

  • ucm-host = Oracle Content Server host name

  • ucm-port = Oracle Content Server port number

  • ucm-crawl-user = Oracle Content Server crawl user name

  • ucm-crawl-user-pw = Oracle Content Server crawl user password

  • authentication-id-format = Use 'nickname' if the Identity Management plug-in on Oracle SES is set to Oracle Internet Directory; otherwise, use the value of the Authentication Attribute parameter on the Identity Management plug-in on Oracle SES

  • Document-pipeline = Document pipeline on Oracle SES created for this WebCenter instance

Example 21-15 Create a WebCenter Discussions Crawler in WLST

createDiscussionsCrawler(
'webcenter','webcenter_host','webcenter_port',
'http://ses-host:ses-port/search/api/admin/AdminService', 'ses-admin-pw',
'jdbc:oracle:thin:@database-host:database-port:database-sid',
'Jive-crawler-schema','Jive-crawler-schema-pw', 'authentication-id-format',
'ACCEPT_ALL', 'PROCESS_ALL', 'MANUAL', 1, 1, 'MONDAY', 1, 1, 1, 1)

where:

  • webcenter_host = WebCenter host name

  • webcenter_port = WebCenter port number

  • ses-host = Oracle SES host name

  • ses-port = Oracle SES port number

  • ses-admin-pw = Oracle SES admin user password

  • database-host = Oracle WebCenter Discussions database host name

  • database-port = Oracle WebCenter Discussions database port number

  • database-sid = Oracle WebCenter Discussions database name or SID

  • Jive-crawler-schema = Oracle WebCenter Discussions crawler schema name. Determine the prefix from RCU, and use rcu-prefix_DISCUSSION_CRAWLER.

  • Jive-crawler-schema-pw = Oracle WebCenter Discussions crawler schema password

  • authentication-id-format = Use 'nickname' if the Identity Management plug-in on Oracle SES is set to Oracle Internet Directory; otherwise, use the value of the Authentication Attribute parameter on the Identity Management plug-in on Oracle SES.

Note:

To effect WLST changes, you must restart the managed server on which the WebCenter application is deployed (by default, WC_Spaces). For more information, see the section "Starting and Stopping WebLogic Managed Servers Using the Command Line" in Oracle Fusion Middleware Administrator's Guide.

21.6.6 Configuring Oracle SES Search for Spaces Using Python Script

A sample Python script runs the steps done using WebCenter WLST commands in Section 21.6, "Configuring Oracle SES to Search WebCenter Spaces Applications." The sample script performs the following tasks:

  • Create Federation Trusted Entity on Oracle SES

  • Create crawl user with crawl role in WebCenter

  • Create connection to Oracle SES in WebCenter

  • Create WebCenter crawl source in Oracle SES

  • Create Oracle Content Server source in Oracle SES

  • Create Discussions source and Announcements source in Oracle SES

Note:

This script is supported only on Oracle SES 11.1.2 and above.

This sample script has the following prerequisites:

The sample Python script file and its properties file are in the $WC_ORACLE_HOME/webcenter/scripts/ses_11.1.2/ directory.

Follow these stepts to use the sample Pypton script:

  1. Set a environment variable to reference the directory. For example:

    setenv SESDIR Oracle_WC1/webcenter/scripts/ses_11.1.2/
    
  2. Update the ConfigureSES.properties file with appropriate values.

  3. Set default directory to the directory of wlst.sh script. For example:

    cd Oracle_WC1/oracle/as11gr1wc/common/bin/
    
  4. Run the ConfigureSES.py script with ConfigureSES.properties. For example:

    ./wlst.sh $SESDIR/ConfigureSES.py $SESDIR/ConfigureSES.properties
    
  5. Restart WebCenter after successful completion of the Python script.

21.7 Troubleshooting Issues with Oracle SES Search

This section provides troubleshooting tips on administering Oracle SES search. It includes the following subsections:

21.7.1 No Search Results Found

Problem

No search results are found.

Solution

Check the following:

21.7.1.1 Oracle SES Connection

Confirm that you can access the Oracle SES SOAP URL and that connection properties to Oracle SES are correct.

For more information, see Section 21.4.5, "Testing Oracle SES Connections."

21.7.1.2 Documents and Discussions Connections

Confirm that a Documents connection and an Oracle WebCenter Discussions connection exist in Oracle WebCenter.

The Oracle SES search log shows if a WebCenter service is excluded from the Oracle SES Search. Locate the search log file on the Oracle SES instance and check the log file for totalSearchTime.

No service excluded (that is, Oracle SES search is enabled for all WebCenter services) looks similar to the following:

req=Search userName=vicki totalSearchTime=1150ms userQuery=0712>

Service excluded (that is, Oracle SES search is not enabled for Documents, Discussions, and Announcements) looks similar to the following:

req=Search userName=vicki totalSearchTime=1133ms userQuery=0712
-wc_serviceId:oracle.webcenter.doclib
-wc_serviceId:oracle.webcenter.collab.forum
-wc_serviceId:oracle.webcenter.collab.announcement>

21.7.1.3 WebCenter Crawl Configuration

Use Fusion Middleware Control or WLST to confirm that Oracle SES search is enabled in WebCenter, as described in Section 21.6.1, "Setting Up WebCenter for Oracle SES Search."

21.7.1.4 Oracle SES Configuration

  1. Confirm that you have installed all required patches for Oracle SES. For the latest information on required patches, see "Back-End Requirements for the Search Service" in Oracle Fusion Middleware Installation Guide for Oracle WebCenter and the Release Notes.

  2. Confirm that Oracle SES is configured with an identity management system to validate and authenticate users. Also confirm that WebCenter and Oracle SES use the same identity management system, such as Oracle Internet Directory. All repositories you are using (such as WebCenter Spaces, Oracle Content Server, and Oracle WebCenter Discussions) must share the same user base as Oracle SES.

    Additionally, each Oracle SES instance must have a trusted entity for allowing WebCenter end users to be securely propagated at search time. For more information, see Section 21.3.2, "Oracle SES - Configuration."

    To test the Oracle SES is connection with a federated trusted entity user, see Section 21.4.5, "Testing Oracle SES Connections."

21.7.1.5 User Authentication

Confirm that the user exists (that is, confirm that the user can log on) in WebCenter identity plug-ins, Oracle SES, and all configured data repositories, such as Oracle Content Server and Oracle WebCenter Discussions.

An Oracle SES proxy login error in the WebCenter diagnostic log looks similar to the following:

Received status "failed" during proxy login with application entity "weblogic" to
Oracle SES at [http://host:port/search/query/OracleSearch], as search user
"vicki". Defaulting to public.

21.7.1.6 Oracle SES Crawling

Confirm that Oracle SES crawled successfully in all sources.

  1. In the Oracle SES administration tool, go to the Home - Schedules tab. Click the Log File icon to display the log file for the source. To obtain the location of the full log, click the Status link. The Crawler Progress Summary and Log Files by Source section displays the full path to the log file.

  2. If Oracle SES fails to log in to the Oracle Content Server crawl endpoint due to an authentication error, then the following errors are logged:

    EQP-60303: Exiting saxthread due to errors
    
    EQP-80330: Unrecognized QName <http://schemas.xmlsoap.org/soap/envelope/>:Envelope oracle.search.sdk.crawler.PluginException       
    
  3. For the Oracle WebCenter source, verify if the rsscrawl servlet is unavailable. For example:

    FATAL      main            EQP-80309: Exception while opening a stream to the URI: https://example.com:port/rsscrawl?command=GetControl
    
  4. For the Oracle Content Server source, verify if the password is invalid. For example:

    XML error
    
  5. Monitor the crawl process in the Oracle SES administration tool with a combination of the following:

    1. Check the crawler progress and status on the Home - Schedules page. (Click Refresh Status.) From the Status page, you can view statistics of the crawl.

    2. Monitor your crawler statistics on the Home - Schedules - Crawler Progress Summary page and the Home - Statistics page.

    3. Monitor your search statistics on the Home - General page and the Home - Statistics page.

    See Oracle Secure Enterprise Search Administrator's Guide for tips to tune crawl performance.

  6. Additionally, examine snapshots and datafeeds on the Oracle Content Server instance, and examine the Oracle WebCenter Discussions database.

21.7.1.7 Oracle SES Authorization

  1. In the Oracle SES administration tool, go to the Home - Sources tab.

  2. Click the Edit icon for the source to see source configuration tabs.

  3. Click the Authorization tab to confirm the authorization connection string, user name, password, and authorization user ID format.

  4. Examine the Oracle SES log file (described in a previous step). Look for phrases including the URL value. For example:

    ORA-01017: invalid username/password error
    

For detailed information on the Oracle SES administration tool, see the Oracle SES documentation included with the product. (This is listed in the WebCenter product area on the Oracle Fusion Middleware documentation library.)

21.7.2 Search Failure Errors

Problem

The following search failure messages may appear inconsistently after a search:

Search failure: time out error
Search failure: problem preparing search executor
Search failure: problem with execution

Solution

Wait a moment, and try the search again. These messages appear when the service times out, which largely depends on the system load. If the time out error persists, adjust the executionTimeout parameter in the setSearchConfig command.

For command syntax and examples, see the section, "setSearchConfig" in Oracle Fusion Middleware WebLogic Scripting Tool Command Reference.

21.7.3 Cannot Grant View Permissions to WebCenter

Problem

You get the following error when granting "view" permissions, as described in Section 21.6.1, "Setting Up WebCenter for Oracle SES Search."

Command FAILED, Reason: javax.naming.directory.AttributeInUseException: [LDAP: e
rror code 20 - uniquemember attribute has duplicate value.]; remaining name 'orc
lguid=F0CC506017B711DFBFFED9EA6A94EAEC,cn=Permissions,cn=JAAS Policy,cn=webcente
r,cn=wc_domain,cn=JPSContext,cn=jpsroot_webcenter_dadvmc0057'

Solution

This error appears if the permission is granted. Ignore the error.

21.7.4 Restricting Oracle SES Results by Source Group or Source Type

Problem

You want to restrict search results by source group or source type.

Solution

In the Oracle SES admin tool, navigate to the Home - Sources - Customize Federated Source - Search Restrictions page to set search restrictions.Alternatively, use filters, where each filter is a restriction on search result.

For detailed information about using Oracle SES, see the Oracle SES documentation on the Oracle Fusion Middleware documentation library (in the WebCenter product area).