Skip Headers

Oracle® Application Server 10g Release Notes
10g (9.0.4) for Linux x86

Part Number B12261-03
Go To Documentation Library
Home
Go To Table Of Contents
Contents

Go to previous page Go to next page

11
Oracle Ultra Search

This chapter describes issues associated with Oracle Ultra Search. It includes the following topics:

11.1 General Issues and Workarounds

This section describes general issues and their workarounds for Oracle Ultra Search. It includes the following topics:

11.1.1 Oracle Ultra Search URL Status Codes

Oracle Ultra Search uses a set of codes to indicate the crawling result of the crawled URL. Besides the standard HTTP status codes, it uses its own codes for non-HTTP related issues. Only URLs with a status of 200 will be indexed. Table 11-1 lists the Oracle Ultra Search status codes.

Table 11-1   Oracle Ultra Search Crawler URL Status Codes
Code Description Code Description

200

URL OK

907

Socket bind exception

400

Bad Request

908

Filter not available

401

Authorization required

909

Duplicate document detected

402

Payment required

910

Duplicate document ignored

403

Access forbidden

911

Empty document

404

Not found

951

URL not indexed

405

Method not allowed

952

URL crawled

406

Not acceptable

953

Meta tag redirection

407

Proxy authentication required

954

HTTP redirection

408

Request timeout

955

Black list URL

409

Conflict

956

URL is not unique

410

Gone

957

Sentry URL (URL as a placeholder)

414

Request-URI too large

958

Document read error

500

Internal server error

959

Form login failed

501

Not implemented

1001

Data type is not TEXT/HTML

502

Bad gateway

1002

Broken network data stream

503

Service unavailable

1003

HTTP redirect location does not exist

504

Gateway timeout

1004

Bad relative URL

505

HTTP version not supported

1005

HTTP error

902

Timeout reading document

1006

Error parsing HTTP header

903

Filtering failed

1007

Invalid URL table column name

904

Out of memory error

1008

JDBC driver missing

905

IOEXCEPTION in processing URL

1009

Binary document reported as text document

906

Connection refused

1010

Invalid display URL

11.1.2 Upgrading to Oracle Application Server 10g

Per the Oracle Application Server 10g Upgrading to 10g (9.0.4) document, you must apply database 9.0.1.5 patchset before you upgrade iAS 9.0.2 to Oracle Application Server 10g.

After you apply the patchset, do not perform the following post install actions as described in the patchset note:

Instead, perform the following post install steps:

11.1.3 Oracle Ultra Search and OracleAS Portal

Oracle Ultra Search can only crawl public Oracle AS Portal sources. See the Oracle Application Server Portal Configuration Guide for how to set up public pages.

11.1.4 Security Considerations When Using Restricting Access to a Data Source

This section covers Important security considerations when using a single ACL to restrict access to a data source.

An Oracle Ultra Search data source can be protected by a single administrator specified ACL. This ACL specifies which users and groups are allowed to view the documents belonging to that data source.

Oracle Ultra Search uses the Oracle Server's ACL evaluation engine to evaluate permissions when queries are performed by search users. This ACL evaluation engine is a feature of Oracle XML database. If an Oracle Ultra Search query attempts to retrieve a document that is protected by an administrator specified ACL, the ACL is evaluated and subsequently cached.

The duration an ACL is cached is controlled by an XDB configuration parameter. Please consult the chapter titled "Oracle XML DB Resource Security" in the book Oracle XML DB Developer's Guide. The XDB documentation indicates that the /xdbconfig/sysconfig/acl-max-age parameter should be modified. The value is a number in seconds that determines how long ACLs are cached. Please see the chapter on "Installing and Configuring Oracle XML DB" for information on altering this configuration parameter.

Since ACLs are cached, it is important to remember that changes to an administrator specified ACL may not propagate immediately. This only applies to database sessions that existed before the change was made.

11.1.5 Oracle Ultra Search Reconfiguration After Database Character Set Change

Two SQL scripts (wk0prefcheck.sql and wk0idxcheck.sql) under $ORACLE_HOME/ultrasearch/admin/ are used for this reconfiguration.

11.1.6 Data Returned to Oracle Ultra Search Must Be in UTF-8 Character Set

All data returned to Oracle Ultra Search must be in the UTF-8 character set. However, multibyte character sets such as Chinese or Korean are incompatible with UTF-8. Therefore, Oracle Ultra Search does not correctly handle or recognize the incoming data.

11.1.7 Crawl of Data Source with Multi-byte Name Fails

An Oracle Ultra Search crawl of a data source with a multi-byte name will fail. An error of the file not being found occurs if the local environment that starts the Oracle database is not compatible with the locale's target files.

To correct this problem, you must set the correct locale, restart the Oracle database and force Oracle Ultra Search to re-crawl the data source.

For example:

  1. Shutdown the Oracle database instance with the following command:

    SQL> shutdown immediate
    
    
  2. Set the locale to 'ja' using the following commands:

    > setenv LANG ja
    > setenv LC_ALL ja
    
    
  3. Restart the Oracle database instance with the following command:

    SQL> startup
    
    
  4. Restart the Oracle Ultra Search schedule with a forced re-crawl.

11.1.8 Oracle Ultra Search does not Support All Database Character Sets

Oracle Ultra Search does not support database character sets that are not supported by Oracle Text.

For example, the AL32UTF8 character set is not supported.

For Unicode support, use UTF8.

For the complete list of supported database character sets, please consult the Oracle Text Reference for Lexer Types.

11.1.9 Bugs

XML DB Dependency--the following two XML database bugs are identified in the 9.2.0.4 database release. They will be fixed in post 9.2.0.4 database patch release.

11.2 Customer Database Install of the Oracle Ultra Search Backend

Oracle Ultra Search can be installed on top of an existing Oracle 9i (9.0.1.4) or later database. This can be done in one of two ways:

11.2.1 Installation Using Oracle Application Server Repository Creation Assistant

Oracle Application Server Repository Creation Assistant (OracleAS RepCA) converts a customer database into an OracleAS Metadata Repository. OracleAS RepCA will install all of the Oracle Application Server component schemas and also install the Oracle Ultra Search backend.

OracleAS RepCA is only available in the Oracle Application Server release. OracleAS RepCA is the recommended way of installing Oracle Ultra Search backend onto a customer database. Although there is the overhead of having all the other Oracle Application Server component schemas installed along with Oracle Ultra Search, you will get the benefits of OracleAS Infrastructure 10g (for example, Identity Management Integration, well defined processes for IM re-association, and so forth).

For details on how to use OracleAS RepCA to create an MR, refer to the "Using an Existing Database for the OracleAS Metadata Repository" section of the Oracle Application Server 10g Installation Guide.

IMPORTANT: For Oracle Ultra Search, there is a required post-OracleAS RepCA install configuration step. Oracle Ultra Search crawler is a Java application that requires JDK 1.4.1 or later. Oracle Ultra Search is configured by OracleAS RepCA to use the default JDK installation (for example, $ORACLE_HOME/jdk/bin/java), which in the pre-10g ORACLE_HOME is pre-JDK 1.4.1; thus, unless your $ORACLE_HOME/jdk/bin/java is already JDK 1.4.1 or later, you must perform the following steps:

  1. Install JDK 1.4.1 or later on the local system.

  2. Go to the ultrasearch/admin directory of the OracleAS RepCA CD. Then execute the wkrepca.sql script via SQLPLUS. You will have to connect as the wksys user and pass to the script the path to the JDK 1.4.1 or later Java executable. For example:

    sqlplus wksys/wksys password@repca_cd/ultrasearch/admin/wkrepca.sql
         /usr/local/jdk1.4/bin/java
    

11.2.2 Manual Installation with wk0setup

If you want to install only the Oracle Ultra Search backend into a customer database, you can opt for manual installation of Oracle Ultra Search backend. To illustrate this process here, we use the following values and conventions:

ORACLE_HOME--the Oracle home directory of the target database

SH -- the source directory, the directory on the OracleAS RepCA CD, that contains the Oracle Ultra Search directory (for example OracleAS RepCA)

Following are the steps involved in a manual installation of the Oracle Ultra Search backend:

  1. Back up the $ORACLE_HOME/ultrasearch directory. You can do this by renaming this directory to $ORACLE_HOME/ultrasearch.old.

  2. Copy SH /ultrasearch to $ORACLE_HOME/ultrasearch.

  3. Change directory to $ORACLE_HOME/ultrasearch/admin.

  4. If the Oracle Ultra Search schema wksys already exists on the target database then de-install it by executing:

    sqlplus /nolog @$ORACLE_HOME/ultrasearch/admin/wk0deinstall.sql sys SYSPW 
    CSTR
    
    

    See below for the meaning of each parameter.

  5. Execute the SQLPLUS script wk0setup.sql.

For example:

sqlplus /nolog @$ORACLE_HOME/ultrasearch/admin/wk0setup.sql $ORACLE_HOME CSTR sys SYSPW 'as 
sysdba' WKSYSPW TBLSPC TMPTBLSPC portal CFS oui PSEP JDBCDRV JDBCNLS JEXEC CTXHX JDBC_NODE JDBC_
ALL $ORACLE_HOME

where the various parameters are as follows (parameters should be enclosed in single quotes to avoid misinterpretation):

11.2.2.1 Backend Reconfiguration After a Database Character Set Change

If the database character set has been changed after Oracle Ultra Search installation, you must reconfigure the Oracle Ultra Search backend so that it can adapt to the new character set.

Two SQL scripts (wk0prefcheck.sql and wk0idxcheck.sql), located in $ORACLE_HOME/ultrasearch/admin/, are used for this reconfiguration:

11.3 Documentation Errata

This section describes documentation errata for the Oracle Ultra Search User's Guide. It includes the following topics:

11.3.1 General Corrections

References to the "temporary directory" in the tuning and administration chapters should read "cache directory" instead.

11.3.2 Section 1.3.4 - Secure Search

Oracle Ultra Search only supports the "Crawl ACLs from the Data Source" mode for user-defined data source types where the crawler agent retrieves the ACL from the data source along with other document attributes. You cannot get ACL from a data source if it is a Web, table, portal, email, or file type.

With agent APIs, there is a new URL property "UrlData.ACL" that allows the agent to set the ACL of the URL submitted. There is also a new AclHelper class in the Agent APIs. This generates the ACL string to make sure that the ACL string format is correct.

Only Distinguished Name (DN) and Global User Id (GUID) can be used as the principal of an ACL.

11.3.3 Section 2.2.2 - Configure a Secure Oracle Ultra Search Installation

The following additions and corrections apply to setting up a secure Oracle Ultra Search installation. Before you can set up a secure Oracle Ultra Search installation, you must:

Also, the reference to the Oracle Database Administrator's Guide for details on configuring the database to use Oracle Identity Management and Oracle Internet Directory should be ignored.

11.3.4 Section 2.5.4 - Installing the Middle Tier with the Oracle Application Server Release

If you checked the "OracleAS Portal" option on the "Configuration Options" Oracle

Installer screen, then the configuration steps in the following section are automatically performed by the Oracle Portal Configuration Assistant (OPCA).

You do not need to perform any additional manual steps as indicated in the section text ("Editing the data-sources.xml File"). Everything is configured automatically.

11.3.5 Section 2.5.4.1 - Configuring the Middle Tier with Oracle HTTP Server and OC4J

For application.xml file, under the <orion-application> tag, change the following:

Change:

<library path="$ORACLE_HOME/ultrasearch/lib/ultrasearch_query.jar" />
<library path="$ORACLE_HOME/ultrasearch/webapp/config" />
<library path="$ORACLE_HOME/jlib/uix2.jar" />
<library path="$ORACLE_HOME/jlib/share.jar" />
<library path="$ORACLE_HOME/jlib/regexp.jar" />
<library path="$ORACLE_HOME/lib/mail.jar" />
<library path="$ORACLE_HOME/lib/activation.jar" />
<library path="$ORACLE_HOME/lib/xmlparserv2.jar" />
<library path="$ORACLE_HOME/jdbc/lib/nls_charset12.zip" />
<library path="$ORACLE_HOME/jdbc/lib/classes12.jar" />

to:

<library path="$ORACLE_HOME/ultrasearch/lib/ultrasearch_query.jar" />
<library path="$ORACLE_HOME/ultrasearch/webapp/config" />
<library path="$ORACLE_HOME/jlib/uix2.jar" />
<library path="$ORACLE_HOME/jlib/share.jar" />
<library path="$ORACLE_HOME/jlib/regexp.jar" />
<library path="$ORACLE_HOME/jdbc/lib/nls_charset12.zip" />
<library path="$ORACLE_HOME/jlib/repository.jar"/>
<library path="$ORACLE_HOME/jlib/ohw.jar"/>
<library path="$ORACLE_HOME/jlib/ldapjclnt9.jar"/>
<library path="$ORACLE_HOME/j2ee/home/jazn.jar"/>
<library path="$ORACLE_HOME/portal/jlib/ptlshare.jar"/>
<library path="$ORACLE_HOME/portal/jlib/pdkjava.jar"/>

For the default-web-site.xml under the <web-site> tag, add the following:

Change:

<web-app application="UltrasearchAdmin" name="admin" root="/ultrasearch/admin" />
<web-app application="UltrasearchQuery" name="query" root="/ultrasearch/query"/>
<web-app application="UltrasearchPortlet" name="query" root="/provider/ultrasearch" />

To:

<web-app application="UltrasearchQuery" name="query" root="/ultrasearch/query"/>
<web-app application="UltrasearchQuery" name="welcome" root="/ultrasearch" />
<web-app application="UltrasearchAdmin" name="admin" root="/ultrasearch/admin" />
<web-app application="UltrasearchAdmin" name="admin_sso" root="/ultrasearch/admin_sso" />
<web-app application="UltrasearchAdmin" name="ohw" root="/ultrasearch/ohw" />

11.3.6 Section 2.5.4.5 - Editing the ultrasearch.properties File

The content of the ultrasearch.properties file has changed.

Here is an example of the ultrasearch.properties file:

connection.driver=oracle.jdbc.driver.OracleDriver 
#If set, The JDBC connection URL specified here will override the dynamically 
#acquired one from OID. 
#This setting is also used by the 9i query sample (gsearch.jsp) 
#Example: connection.url=jdbc:oracle:thin:@<host>:<port>:<sid> 
connection.url=%JDBC_CONN_STR% 
oracle.net.encryption_client=REQUESTED 
oracle.net.encryption_types_client=(RC4_56,DES56C,RC4_40,DES40C) 
oracle.net.crypto_checksum_client=REQUESTED 
oracle.net.crypto_checksum_types_client=(MD5) 
oid.app_entity_cn=m16bi.sgtcnsun03.cn.oracle.com 
domain=us.oracle.com 

You no longer need to configure the JDBC connect string in the ultrasearch.properties file. The database connect information is taken from Oracle Internet Directory.


Note:

The Oracle Ultra Search 9i query sample pages (gsearch.jsp) will no longer work out of the box. You must use a separate property file or edit the ultrasearch.properties file.


11.3.7 Section 2.6.2 Configuring the Backend on Remote Crawler Hosts

Step 4 should read as follows:

4.     Invoke the registration script.

11.3.8 Section 5.1.1 - Ultra Search Security Model

For Oracle Ultra Search to access secure Web sites, you may need to import certificates into the crawler's trust store and the Oracle Containers for J2EE (OC4J) JVM's trust store.

The Oracle Ultra Search administration tool is a Web application that runs within the OC4J JVM. Secure portal instances require clients to authenticate with SSL. To discover page groups in secure portal instances, the Oracle Ultra Search administration tool must make HTTPS network calls.

By default, the OC4J JVM recognizes certificates of well-known certificate authorities. However, if the secure portal instance uses a self-signed certificate or a certificate signed by an unknown certificate authority, then you must import the portal's certificate into the OC4J JVM's truststore. This can be done with the keytool utility provided by Sun Microsystems.

The OC4J JVM default truststore is located at $ORACLE_HOME/jdk/jre/lib/security/cacerts.

See Also:

Sun Microsystems documentation for more information about using Sun's keytool key and certificate management utility, for information on customization of the SSL service, and for information on truststore management.

OracleAS Containers for J2EE documentation for information on configuring OC4J to use a different truststore.

11.3.9 Section 7.5.2 - Remote Crawler Profiles

At the end of this section the following note should be present:


Note:

The remote crawler cache directory must be mounted to the server side crawler cache directory (specified under "Crawler" "Settings" tab), otherwise the documents can not be indexed.


Note: The remote crawler cache directory must be mounted to the server side crawler cache directory (specified under "Crawler" "Settings" tab), otherwise the documents can not be indexed.


Go to previous page Go to next page
Oracle
Copyright © 2003 Oracle.

All Rights Reserved.
Go To Documentation Library
Home
Go To Table Of Contents
Contents