Skip Headers
Oracle® Fusion Middleware Autonomy Search Integration Sample Guide for Oracle WebLogic Portal
10g Release 3 (10.3.4)

Part Number E15073-03
Go to Documentation Home
Home
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

3 Configuring Your Portal to Use Autonomy Search

During the development phase, you can add Autonomy portlets to allow your portal users access to Autonomy search functions. You can also build your own portlets or customize existing ones.

This chapter discusses the following topics:

Note:

This note applies to you only if you are using Autonomy to search your Oracle WebLogic Portal Content Repository. Additionally, you do not need to configure your application to use the Autonomy integration code if you are only using Autonomy portlets.

After configuring your portal to use Autonomy to search, you must configure your application to use the sample Autonomy integration code provided with the Oracle WebLogic Portal. For details, see Chapter 4, "Integrating Your Portal with Autonomy Search."

3.1 Preparing to Develop a Portal with Autonomy Search

Before you add and create Autonomy search capabilities within your portal, you need to ensure your development environment has the necessary tools and the proper settings. Specifically, you need to add the Autonomy portlets to your web application library, and ensure that Autonomy search features are optimized for your environment.

This section includes the following topics:

3.1.1 Configuring Autonomy Search Capabilities in Your Development Environment

Running Autonomy's search services and Oracle WebLogic Portal full-text search while developing your portal could use unnecessary memory resources. If you do not need to run search capabilities continuously in your development environment, it is recommended that you configure a staging environment for your Autonomy search features, see Chapter 7, "Staging Autonomy Search Functionality."

Optionally, you could also disable search within your development environment. Disabling search involves disabling Oracle WebLogic Portal Content Management full-text search as well as turning off Autonomy's search services.

3.1.2 Disabling Oracle WebLogic Portal Content Management Full-Text Search

To disable Oracle WebLogic Portal Content Management full-text search:

  1. Start your portal domain.

  2. Start the Oracle WebLogic Portal Administration Console.

  3. Select Content > Content Management from the navigation menu at the top of the console.

  4. Select Manage | Repositories.

  5. In the resource tree, click the repository for which you want to disable full-text search.

  6. In the Advanced section, click Advanced to view the Edit Advanced Properties for Repository dialog.

  7. In the Edit Advanced Properties for Repository dialog, edit the properties listed in Table 3-1.

Table 3-1 Advanced Repository Properties

Advanced Property What it does:

Search Indexing Enabled

Allows content for this repository to be indexed for portal full-text search against a repository which supports full-text search. This enables portal developers to use full-text content search in any portlets that they develop.

Full-Text Search Enabled

Enables users to search the repository using the full-text of the content.


  1. When finished making changes, click Save.

    Your modifications display in the Advanced section of the Summary page.

    Note:

    After you make any changes to repository properties, Portal Administration Console users must log out and log back in to view the changes.

3.1.3 Disabling Autonomy's Services

If full-text search is not enabled on any Oracle WebLogic Portal repository, you can disable Autonomy's search services. When you disable Autonomy's services, the following features will not be available:

  • Full-Text Search on a WLP repository

  • Autonomy portlets

  • Any application/portlet which uses the Autonomy API

To disable Autonomy's services:

  1. Stop your portal domain.

  2. Set the following environment variable on your portal domain server: CONTENT_SEARCH_OPTION=none

  3. Restart your portal domain.

3.1.4 Installing Autonomy Portlets

In order to use Autonomy's portlets within your portal application, you must first install and configure them.

For additional information about configuring these portlets, see the Autonomy Portlets for WebLogic Administration Guide or the Autonomy Portlets User Guide, published by Autonomy Corporation. Contact WebLogic Portal Customer Support to obtain a copy of this guide.

The portlets are listed in Table 3-2.

Table 3-2 Autonomy Portlets

Portlet What It Provides:

Autonomy2DMap

The 2D Cluster Map is used to identify conceptual similarities and differences between clusters. Also based on JSP, the landscape is generated from the inter-relationships between clusters and the documents contained within those clusters. Designed to provide a single overview of the clusters contained within the data, clusters that are close together correlate to higher degrees of similarity, whilst dissimilar clusters are situated further apart. By scrolling over the ClusterMap automatic titles are generated and assigned to every cluster. By clicking on the cluster, the results and respective information can be viewed.

Agent

The Agent portlet allows individual users to create their own personalized information channels, either from Natural Language, legacy Keywords, Boolean expressions, Parametric Searches or even simply by example. These agents then monitor all incoming information and can target and alert useful content on a continual basis, automatically.

Users begin by customizing the Agent Portlet by setting up 'interest agents'. This is done by the user describing in plain natural language what it is they are interested in. The Interest Agent persistently identifies all relevant content and presents it in a concise personalized page, complete with URL links. As new information becomes available the agent will monitor new data submissions ensuring that the Portlet user is always provided with up-to-date information. Moreover, as user interests change users are also given the option to refine their interest by retraining the agents.

Breaking News

The Breaking News portlet identifies what's new in the information space. Taking the cluster analysis from a previous time period and comparing it to a current one allows automatic identification of new clusters that weren't previously present, allowing automation of 'breaking news' pages, alerting to new areas of information or new interest trends in subscriber groups.

Community

The Community portlet notifies individual users of any agents that people in the work community may have set up using the Agent portlet, which resemble their own personalized agents. This Portlet brings together the benefits of collaboration, reducing duplicated effort as well as identifying experts within the organization.

Cluster

Cluster portlets provide a range of classification Portlets and visualization tools that can be added to the Oracle environment, further enriching the portal experience.

Autonomy's automatic clustering features identify areas of intense research, breaking news or emerging trends and market opportunities based on information found within the knowledge base. Autonomy's Cluster Portlets can take large sets of document data or user-profile information and automatically identify the main set of concepts/ themes inherent within the knowledge base.

Furthermore, clustering can be used in identifying the 'gap' between the users interests and the data being provided to the users thereby allowing 'knowledge/ content gaps' to be eliminated through provision or aggregation of further content relevant to the community.

Expertise Locator

The Expertise Locator portlet allows users to find people who have been dealing with a specific subject by entering a brief natural language description of the subject. It returns all agents and profiles that match this description together with the names of the users who own the agents or profiles.

Hot News

The Hot News Cluster portlet can identify what is most popular or the main topics/clusters of information or interests found within the information assets or an organization. This allows the business to instantly receive a high-level view of the entire knowledge base providing a catalyst that enables informed decisions to be made faster.

Administration

The Administration portlet that enables you to administer and maintain all Autonomy Portlet settings from a central location.

Profile

The Profile portlet brings new documents to users attention based on each users individual interest and according to their profile. This Portlet creates a profile on each user based on the concepts of the documents that the user has been reading within the Autonomy Portlet suite (Agents, Retrieval, Clustering, Community and so on). Every time a user opens a new document within the Autonomy Portlet suite, the user's profile will be update based on the information read.

Retrieval

Autonomy's Retrieval portlet provides a fully-automated and precise means of retrieving information. It allows content to be searched in any language and any format, wherever it is stored, and presented with hyperlinks to similar information, automatically and in real-time. Unlike ordinary searches that look for keywords the Autonomy Retrieval Portlet allows you to enter a natural language query. The Retrieval Portlet submits the natural language query to one or more databases that have been set up, in order to find documents that are related to your query.

Similar People

The Similar People portlet notifies a user or other people in the same organization of other users who have been using the same type of documents that you have been looking at. This feature helps users avoid spending time on searching for information that may already be available.

Spectrograph

The Spectrograph portlet displays the relationship between clusters on successive periods and sets of data. Clusters are presented as a JSP-based spectrograph, whereby the x-axis represents information over time (enabling users to visualize how clusters develop over a given time period), whilst the y-axis represents the range of concepts defined within the knowledge base.

Moreover, the spectrograph is able to display hot and breaking news in the same instance. The importance of clusters over time can be seen through the change of color and width. The color/ intensity of the lines is an indication of the size of cluster. The brighter colors indicate what is popular, and the width of the lines is an indication of the quality of the cluster. Navigation features are identical to the 2D ClusterMap enabling users to browse clusters with a click of the mouse.


After installing the Autonomy portlets, you can use them or add them to your portal without customizing them. If installing the Autonomy portlets in a portal application, you should also configure an additional servlet, see Section 3.1.5, "Enabling Autonomy Portlets in a Portal Application."

For more information about working with portlets, see Oracle Fusion Middleware Portlet Development Guide for Oracle WebLogic Portal.

To add these portlets:

Note:

These instructions assume you have already created and deployed your portal application.
  1. Locate the AutonomyPortlets.zip file in your Oracle WebLogic Portal installation directory. For example, <WLPORTAL_HOME>/content-mgmt/thirdparty/autonomy-wlp10/common/AutonomyPortlets.zip

    Note:

    The path in the example is based on an upgraded Oracle WebLogic Portal domain. If you performed a clean installation of Oracle WebLogic Portal and installed Autonomy separately from Oracle WebLogic Portal, the path in your environment might differ from the example. For this reason, you should change the path in your environment accordingly.
  2. Extract the contents of the AutonomyPortlets.zip file to a temporary directory of your choosing. For example, c:/temp/.

  3. Add the following to Oracle Enterprise Pack for Eclipse (OEPE) by right-clicking the appropriate folder and then selecting Paste:

    1. Copy the autonomyPiB.jar file to yourEAR/EARContent/APP-INF/lib directory.

    2. Copy the portlet folder to your webApp/webContent directory. For example, <your_projects>/w4WP_workspaces/<project_name>/<yourWebApp>/WebContent/

    3. Copy the portalInabox.css file to the <yourWebApp>/webContent/portlets directory that you added in the previous step.

    4. Copy the AutonomyPortletSettings.usr file to the userprofiles subdirectory of your Datasync project directory. For example, <yourDataSyncProject>/src/userprofiles/.

    5. Copy the *.properties files in the temporary WEB-INF/classes directory to your web application's WEB-INF/classes/ directory. If you don't have this directory, create it. For example, <yourWebapp>/WebContent/WEB-INF/classes

  4. Move the portlets.cfg file to your domain directory, or if running in a cluster, to a shared directory outside the application.

  5. This insures that the directory location will be constant regardless of how the application is deployed.

  6. Using a text editor, modify the default-value setting in AutonomyPortletSettings.usr to point to the portlets.cfg file.

    Note:

    You must use an absolute path to point to the portlets.cfg file.
  7. When finished editing, save your changes.

  8. Using a text editor, edit the portlets.cfg file and update the following values to point to your IDOL Server port, if changed: UAPort, ClassPort, and DREPort. Edit other settings if needed. The AutonomyIDOLServer.cfg is located in the <WLPORTAL_HOME>/content-mgmt/thirdparty/autonomy-wlp10/<os>/IDOLserver/IDOL directory.

    Note:

    The path above is based on an upgraded Oracle WebLogic Portal domain. If you performed a clean installation of Oracle WebLogic Portal and installed Autonomy separately from Oracle WebLogic Portal, the path in your environment might differ from the path above. For this reason, you should change the path in your environment accordingly.
  9. For more information about configuring this file, see the Autonomy Portlets for WebLogic Administration Guide, published by Autonomy Corporation. Contact WebLogic Portal Customer Support to obtain a copy of this guide.

  10. Disable JSP fragment validation:

    1. Right-click your web application project and select Properties.

    2. In the tree, select Validation - AppXRay.

    3. In Validation - AppXRay, deselect Report Java compilation errors in JSP pages, and then click OK.

    4. Click Yes when asked to rebuild the AppXRay database.

  11. When finished editing, save changes. If using Autonomy portlets in the portal application, continue to the next section, Section 3.1.5, "Enabling Autonomy Portlets in a Portal Application."

    Note:

    To view the portlets, you must add them to your portal application.

3.1.5 Enabling Autonomy Portlets in a Portal Application

When operating in a portal application, Autonomy portlets require the DownloadServerFileServlet. You need to register this servlet in your web project by editing the web.xml file for your respective web project.

To register this servlet, do the following in Oracle Enterprise Pack for Eclipse:

  1. From the Package Explorer, navigate to the respective web.xml file for your web project. For example, <myWebProject>\WebContent\WEB-INF\web.xml.

  2. Right-click your web.xml file and select Open With > XML Editor.

  3. Add the following sections to your web.xml file.

    1. Register the servlet:

      <servlet>
      <servlet-name>DownloadServerFileServlet</servlet-name>
      <servlet-class>com.bea.apps.groupspace.util.DownloadServerFileServlet</servlet-class>
      </servlet>
      
    2. Register the servlet mapping:

      <servlet-mapping>
      <servlet-name>DownloadServerFileServlet</servlet-name>
      <url-pattern>/DownloadServerFileServlet/*</url-pattern>
      </servlet-mapping>
      
    3. Register the context parameters:

      <context-param> 
       <param-name>com.bea.apps.groupspace.search.enterprise.IDOLServerHost</param-name> 
          <param-value>localhost</param-value>
      </context-param>
      <context-param>    <param-name>com.bea.apps.groupspace.search.enterprise.IDOL_aciPort</param-name>
          <param-value>9014</param-value> 
      </context-param>
      
  4. To enable basic authentication for administrators (in lieu of a login portlet):

    <security-constraint>
       <web-resource-collection>
          <web-resource-name>Site</web-resource-name>
             <url-pattern>/*</url-pattern>
             <http-method>GET</http-method>
             <http-method>POST</http-method>
          </web-resource-collection>
          <auth-constraint>
             <role-name>Admin</role-name>
          </auth-constraint>
    </security-constraint>
    <login-config>
       <auth-method>BASIC</auth-method>
       <realm-name>myrealm</realm-name>
    </login-config>
    <security-role>
       <role-name>Admin</role-name>
    </security-role>
    
  5. Save your web.xml file.

  6. Re-deploy your application.

3.2 Writing Autonomy-based Applications and Portlets

You can create Autonomy-based applications and portlets using the Autonomy APIs. For Autonomy API documentation, review the Autonomy JavaDoc.

Note:

Do not execute queries against any IDOL database which is prefixed with WLP_CM_REPO as these indexes contain information on the WLP content repositories in use for your portal. If you want to execute queries against WLP's content management repositories, you need to use the Oracle WebLogic Portal API, see the Oracle Fusion Middleware Java API Reference for Oracle WebLogic Portal.

3.3 Creating Autonomy Search Portlets for WLP Content Repositories

You can also create portlets that can be used to search Oracle WebLogic Portal's content management system. To do this, you use the Oracle WebLogic Portal Content Search API. You must also install and configure the BEACMRepoFetch in enable this search capability.

Although you use Autonomy's APIs to create most Autonomy search portlets, you must use Oracle WebLogic Portal Content Search API to create portlets that will search the Oracle WebLogic Portal content management system. See the Oracle Fusion Middleware Java API Reference for Oracle WebLogic Portal for more details.

Table 3-3 Helpful Content Search APIs

Package/Class What it does:

com.bea.content.expression.search

This package enables you to build search queries.

FullTextSearchFactory

This class enables you to incorporate full-text search on content within the Virtual Content Repository.


3.4 Configuring Full-Text Wildcard Searches

When performing full-text search wildcard queries for a particular piece of text, finding that text is dependent on the number of occurrences of that text. The default setting is 5. To change this setting, the following needs to be added to the [Server] section of the IDOL Server configuration file (AutonomyIDOLServer.cfg):

SpellCheckCorrectMinDocOccs=1

For example, this query with the default setting:

ITextQuery tQuery = FullTextQueryFactory.getTextQuery(); 
ITextQueryParameter textCriteria = tQuery.buildEquals(new String[] {'*Propagation*'}); 
IFullTextSearch fullTextSearch = FullTextSearchFactory.buildFullTextSearch(null, textCriteria, false); 
Search search = new Search(repositoryPath, -1, null, fullTextSearch, true); 
ISearchManager searchManager = ContentManagerFactory.getSearchManager(); 
IPagedList<Node> nodes = searchManager.search(context, search);

receives hits when the word "Propagation" appears in 5 documents.

If the setting:

SpellCheckCorrectMinDocOccs=2

is added, the search string only need to appear in 2 documents to received hits.

This setting is also used for spell checking. The Autonomy documentation specifies that "The minimum number of documents that a term has to appear in before IDOL server can use it as a spell check suggestion." For more information, see the Autonomy documentation.