52 Oracle Data Integrator

This chapter describes issues associated with Oracle Data Integrator. It includes the following topics:

52.1 Configuration Issues and Workarounds

This section describes the following issues and their workarounds:

52.1.1 Generated Templates Including a Datasource With an Oracle RAC URL Fail to Deploy

Oracle WebLogic Configuration Wizard does not support Oracle RAC URLs for datasources. When a datasource is included in a Java EE Agent template that has been generated using Oracle Data Integrator Studio, this template fails to deploy, and raises the following exception is raised:

com.oracle.cie.wizard.WizardController - Uncaught Exception
java.lang.NullPointerException
atcom.oracle.cie.domain.jdbc.DatasourceXBeanAspectHelper.decomposeURL

As a workaround, do not include this datasource definition in the generated template and deploy the datasource from Oracle Data Integrator Studio.

52.1.2 Generated Templates Including Datasources Fail to Deploy

As the Oracle WebLogic Configuration Wizard uses specific code for parsing the URL and exposing its parameters in a user friendly format, it only supports a predefined set of JDBC URLs. If a JavaEE Agent template that has been generated using Oracle Data Integrator Studio contains a datasource with a URL or driver not included in this set, the Wizard fails to use this template with the following exception:

com.oracle.cie.wizard.WizardController - Uncaught Exception
java.lang.NullPointerException
atcom.oracle.cie.domain.jdbc.DatasourceXBeanAspectHelper.decomposeURL

As a workaround, do not include this datasource definition in the generated template, and deploy the datasource from Oracle Data Integrator Studio.

52.1.3 Template Generation Fails When Using the Default Path on Windows.

When generating an agent template from Oracle Data Integrator Studio running on a Windows platform, the default path for the target template is set to C:/Documents and Settings/<username>/My Documents/agent_template.jar.

If the template is generated to this default path, the following exception appears:

Exception in thread "main" org.apache.commons.vfs.FileSystemException: Could not create file...

This exception appears because this folder is read-only.

As a workaround, specify another writable target path for the generated template.

52.1.4 Repository Creation Does not Trace in the Studio Log Window

Oracle Data Integrator Studio does not trace the actions taking place during a repository creation procedure in the Message - Log window , unlike what is stated in the documentation.

Repository creation actions are traced in the terminal console that are used to start Oracle Data Integrator Studio.

As a workaround, to display this trace:

  • On UNIX, start Studio using the odi.sh command from a shell. Repository creation operations are traced in this shell.

  • On Windows, start Studio from a Command Shell by executing odi.exe. Repository creation operations are traced in this Command Shell.

52.1.5 Switching Password Storage to Internal Leaves Context Keys

When switching the password storage from external to internal, context related keys (named OdiContext@_<internal id>) remain in the credential map of the WebLogic domain, unlike what is stated in the documentation.

As a workaround, remove these keys manually.

52.1.6 Setting Test Queries on WLS Datasources

The Clean Stale Sessions feature of the Agent relies on the stale or dead connections of the connection pool to be automatically cleaned up either through expiration or connection validations tests done by the connection pool implementation.

If the stale connections are not removed out by the connection pool, then the Clean Stale Sessions feature does not work even after the database has been restarted. None of the other requests of the agent will work after the database restart if the agent itself is not restarted.

In a WebLogic Server container, connections are validated every few seconds using a test query. It is recommended to verify and provide the table name used by the database to run the test query: select count(*) from <test_table_name>.

For Master Repositories and Work Repositories, datasources use SNP_LOC_REP and SNP_LOC_REPW as the test tables.

Alternatively, you can use the DUAL table for an Oracle repository.

52.1.7 Hypersonic SQL not Supported as a Repository

Although it may be used for demo or testing purposes, Hypersonic SQL (HSQL) is not supported in this release as a Repository platform.

Customers using HSQL should switch to a supported platform for their repository.

52.2 Design-Time Environment Issues and Workarounds

This section describes the following issues and their workarounds:

52.2.1 Unable to Edit Data for Technologies Using Catalog and Schema Qualifiers.

When using the Data context menu on a datastore, it is possible to modify the data in the Data Editor. However, an error appears when applying these changes. This error appears as an invalid object name error. For example, on Microsoft SQL Server:

[SQLServer JDBCDriver][SQLServer]Invalid object name 'dbo.SRC_CITY'.

This error appears with technologies that support object names and that are qualified by both a catalog (database in the context of Microsoft SQL Server) and a schema name (owner in the context of Microsoft SQL Server).

When fetching the data, the object name is fully qualified (<catalog>.<schema>.<table_name>), but when performing updates, the object is qualified only with the schema name (<schema>.<table_name>) and cannot be found.

There is no generic workaround at this time.

52.2.2 OdiFTPGet Tool Raises IndexOutOfBound Exception on Invalid Password

Submitting an OdiFtpGet call with an incorrectly encoded password raises the following error:

java.lang.IndexOutOfBoundsException: toIndex = 53273 at java.util.SubList.<init>(AbstractList.java:602) at java.util.RandomAccessSubList.<init>(AbstractList.java:758) at java.util.AbstractList.subList(AbstractList.java:468) ... 

Check the encoded password if this error is raised.

52.2.3 OdiXMLSplit Tool Generates Empty Target Files

Submitting an OdiXMLSplit call generates empty target files. The correct number of files are generated, but their content is empty.

There is no workaround for this issue at this time.

52.2.4 OdiXMLSplit Tool: if_file_exists=skip Option Does Not Work

The if_file_exists option of the OdiXMLSplit tool does not work when set to skip and existing target files are overwritten.

There is no workaround for this issue at this time.

52.2.5 Incorrect Non-ASCII File Names in Zip Export Files

Non-ASCII file names are incorrectly generated in Zip export files. Non-ASCII characters in these file names are replaced with underscores. Setting the Never transform non ASCII characters to underscores user parameter to Yes has no effect.As a workaround, export the files in a folder and compress this folder.

52.2.6 Non-ASCII Characters Incorrectly Converted to Underscore Characters

Non-ASCII characters are handled incorrectly in the following situations, even if the Never transform non ASCII characters to underscores user parameter is set to Yes:

  • Non-ASCII characters are replaced with underscores in the Alias field of a column when using the fixed file reverse-engineering wizard.

  • Non-ASCII characters from the header line are replaced with underscores in column names when doing a delimited file reverse-engineering.

As a workaround, manually modify the column definitions after the reverse process.

52.2.7 Unable to Add Datastores to Model Diagrams

If the user parameter called "Directory for Saving your Diagrams (PNG)" is set to an empty value, it is not possible to drag and drop a single datastore into a diagram. As a workaround, set this directory to a valid value.

52.2.8 "Process Model Datastores Only" User Parameter Behavior Is Incorrect

The user parameter "Process Model Datastores only" behavior is incorrect. If this parameter is set to false, only model datastores are processed.

As a workaround, set this parameter temporarily to the opposite value to get the expected result.

52.2.9 Focus Lost in Mapping Property Inspector

In the Interface Editor, when attempting a drag and drop of a source datastore column into the implementation field of the Mapping Property Inspector, the Property Inspector switches to show the source column properties.

This occurs if the focus is in the mapping property inspector.

As a workaround, use the mapping fields on the target datastore for source column drag and drop.

52.2.10 Double Scrollbar and Incorrect Checkbox Behavior in KM and Procedure Editor

When editing a KM or Procedure Command and expanding the Options accordion that is collapsed by default, a double vertical scrollbar appears for the Editor.

When one of the Options is checked, the Editor scrolls to the top and the second scrollbar disappears, and the checkbox is unselected.

As a workaround, scroll down and select the option again.

52.2.11 PDF Printing of Project Diffing Issues an Empty File

Printing a version diffing report for a project that only has a new interface compared to the versioned project generates an empty PDF file.

There is no workaround for this issue at this time.

52.2.12 Temporary Target Columns are Sorted Alphabetically

Columns of the temporary target datastore of an interface are sorted alphabetically in 11g. In 10g, they were sorted in their order of creation.

Note that this issue does not impact the overall behavior of the interface or the structure of the temporary datastore.

There is no workaround for this issue at this time.

52.2.13 Project Variables Become Global After Import in Duplication Mode

If a project containing variables is imported in Duplication mode, these variables are not imported under the project but appear as global variables.

As a workaround, export these global variables and re-import them under the project in Duplication mode.

52.2.14 Interface Cannot be Saved When Changes are Made on The Overview or Control Tabs

When the only changes performed on an interface are made in the Overview and/or the Control tabs, it is not possible to save this interface. The error "Unable to save <interface name>" appears. As a workaround, select the Mapping tab before saving the interface

52.3 Oracle Data Integrator Console Issues and Workarounds

This section describes the following issues and their workarounds:

52.3.1 Oracle Data Integrator Console Page Task Flow Resets When Another Tab Is Closed.

When the tab containing a page is closed in Oracle Data Integrator Console, all the tabs after this one reset their task flows (the navigation actions that were made). The pages in these tabs reset to the original object that was opened.

There is no workaround for this issue at this time.

52.3.2 Enterprise Manager Logout Does Not Propagate to Oracle Data Integrator Console

When Enterprise Manager Fusion Middleware Control (EM) is used in conjunction with Oracle Data Integrator Console with Single Sign-On (SSO) activated, a user logging out from SSO in Enterprise Manager might still be able to access Oracle Data Integrator Console pages from the same browser window by typing a direct URL.

This issue is caused by a cookie that is created by Oracle Data Integrator Console not being invalidated by the Enterprise Manager logout action.

As a workaround:

  • Administrators should configure their Enterprise Manager and Oracle Data Integrator Console servers for access fronted by a gateway. The gateway automatically redirects the user that is not logged into SSO to the SSO Login page.

  • If you're accessing Oracle Data Integrator Console or Enterprise Manager from a shared or public computer, close the session by logging out. For additional security, close the browser session.

52.3.3 Error When Viewing an Error Table From Oracle Data Integrator Console

When trying to view an error table from Oracle Data Integrator Console, the following error appears:

"Error fetching records from error table <table_name>. The table might no more exist or the format of the table is not correct."  

This dialog appears if you are trying to access an error table created and populated by an interface that uses a check knowledge module (CKM) from a previous Oracle Data Integrator release (10gR3). Legacy knowledge modules do not create the error table with all the fields required for Oracle Data Integrator Console.

The error table structure should be upgraded by using the interfaces in 11g CKMs and activating the UPGRADE_ERROR_TABLE = true or DROP_ERROR_TABLE=true CKM options.

The former should be used if records in the error table need to be recycled. If recycling old records is not required then the latter can be used.

52.3.4 Session Search Does Not Support Wildcards and Case Insensitivity on Some Fields

Session Search does not support wild cards on scenario names and does not support case insensitivity on scenario names and messages.

There is no workaround for this issue at this time.

52.3.5 Currently Connected Work Repository Is Exported Only

When exporting a work repository from Oracle Data Integrator Console, the repository exported is always the currently connected one regardless of the work repository selected in the tree. As a workaround, connect to a given work repository before exporting it.

52.4 Technologies and Knowledge Modules Issues and Workarounds

This section describes the following issues and their workarounds:

52.4.1 Oracle Technology Is Defined With Non-Ordered Joins

The Oracle Technology provided with this release of Oracle Data Integrator is defined as supporting the Non-Ordered syntax for joins. However, Oracle Database supports both the Ordered and Non-Ordered syntax.

Oracle Data Integrator technologies allows technology definition with either one or the other syntax checked, but not both.

The Non-Ordered syntax was preserved from the previous product version to allow upgrading customers to execute their existing interfaces with no change.

The Ordered syntax is now the recommended syntax for working with the Oracle database, and allows a better support for the new features from this version.

The following guideline is provided for managing the Join syntax:

  • New customers should preferably switch their Oracle technology to the Ordered syntax.

  • Upgrading customers with existing flows willing to use this new syntax can also switch their Oracle technology to the ordered syntax. They will have to review their interfaces' joins and check their validity with this new syntax.

    Note that changing this syntax does not impact existing scenarios but only interfaces, packages, or new scenarios generated after the upgrade.

To switch the Oracle technology to the Ordered syntax:

  1. Edit the Oracle technology from the Physical Architecture accordion in the Topology Navigator.

  2. In the Data Handling option group, set the Reference radio button to Ordered (SQL ISO).

  3. Click Save in the toolbar.

52.4.2 Incorrect Mention of Javascript Support

Chapter 12 of the Oracle Fusion Middleware Developer's Guide for Oracle Data Integrator guide mentions that Javascript is supported as a scripting language. This is incorrect. Javascript is not a supported as a scripting engine in this release.

52.4.3 IKM SQL Incremental Update (Row by Row) Cannot Target Japanese Tables

IKM SQL Incremental Update (Row by Row) fails on task Flag rows for update if the target table name contains Japanese characters. In the generated code, the integration table name appears as "I$_??????" where "?" characters replaces a Japanese character.

As a workaround, replace this IKM with another IKM suitable for the technology. For example, 'IKM Oracle Incremental Update' for Oracle.

52.4.4 LKM File to DB2 UDB (Load) Fails on Task Load Data With Non-ASCII Files

LKM File to DB2 UDB(LOAD) fails on task Load Data if the source file contains non-ASCII data. In the load script, non-ASCII characters are transformed to "?" character.

As a workaround, replace this LKM with another LKM suitable for the technology. For example, 'LKM File to SQL'.

52.4.5 LKM File to Oracle (SQLLDR) Fails on Task Call SQLLDR With Non-ASCII Files

LKM File to Oracle (SQLLDR) fails on task Call SQLLDR if the source file contains non-ASCII data, even if the Charset Encoding KM option is set to UTF-8.

As a workaround, replace this LKM with another LKM suitable for the technology. For example, 'LKM File to SQL'.

52.4.6 SAP BW OpenHub Extraction with LKM SAP BW to Oracle Does not Work

When using SAP BW OpenHub extraction with LKM SAP BW to Oracle, the following error message appears: "The Source and the Target Columns are different in OpenHub, Please make sure that all the Source Column And Target Column Are Same." Note that this message is localized.

This bug makes extraction from SAP BW Open Hub Destinations impossible. Other BW data targets like InfoCube, InfoObjects and ODS/DSO are not impacted and can still be used for extraction.

There is no workaround for this issue at this time.

52.5 Oracle Data Profiling and Oracle Data Quality Issues and Workarounds

This section describes the following issues and their workarounds:

52.5.1 Unable to Connect the Client to a Data Quality Server on UNIX

When connecting from the Oracle Data Quality Client to a Data Quality Server installed on a UNIX machine the following error message may appear: "No support for client application "Admin" version 12.0.1".

To solve this issue re-install the metabase definitions using the following steps:

  1. On the UNIX server go to the following directory:ODQ_HOME/oracledi/odp/Client/SvrSide

  2. Run ./setup

  3. At the prompt, enter the Metabase Installation location: ODQ_HOME/oracledq/metabase_server/

  4. Enter the metabase admin user and password.

  5. When the metabase definitions installation completes, restart the Scheduler service using the following command: ODQ_HOME/oracledq/metabase_server/metabase/bin/scheduler -restart

52.5.2 Unable to Create a Quality Project With a Data Quality Server on Linux

When connecting from the Oracle Data Quality Client to a Data Quality Server installed on a Linux machine the menu to create a quality project is disabled.

To solve this issue:

  1. Edit the ODQ_HOME/oracledq/metabase_server/etc/.registry file and locate the TSQ_Root parameter value. This parameter may appear as below:value TSQ_Root /scratch/odidq_1/oracledq/12

  2. Set this value to the root directory of the Data Quality Server Installation.

  3. Save the .registry file.

  4. After modifying this value, restart the scheduler service with the following command:ODQ_HOME/oracledq/metabase_server/metabase/bin/scheduler -restart

52.5.3 Menus Are in English When Starting the Client Using a .tss File.

When starting Oracle Data Quality Client by double-clicking on a saved .tss file, the menus appear in English independently of the client machine's locale.

As a workaround, open the client from the shortcut menu, then open the .tss file.

52.5.4 Incorrect Error Message for a Wrong User/Password when Creating an Entity from a Japanese or Chinese Client

When creating an entity, if an incorrect user and password combination is entered for configuring the loader connection, an incorrect message appears in the Create Entity page.

There is no workaround for this issue at this time.

52.5.5 Strings Truncated in Client for non-English Languages

When using the Oracle Data Quality Client from a non-English machine, strings may appear truncated in various places in the client user interface. This does not impact the features and behavior of the client.

There is not workaround for this issue at this time.

52.5.6 Project Export is Empty if Folder Path Contains Non-ASCII Characters

When a data quality project is exported to a folder which path contains non-ASCII characters, the project folder structure is created with no files.

As a workaround, use a folder path that does not include any non-ASCII characters.