Using Client Access Alternative Connectivity Methods for iSeries

12 Product TitleBookTitle as a Variable

14.9.2.2 Using the IBM JT400 and Native Drivers

This driver appears as a jt400.zip file you must copy into your Oracle Data Integrator installation drivers directory. To connect DB2 for iSeries with a Java application installed on the iSeries machine, IBM recommends that you use the JT400 Native driver jt400native.jar instead of the JT400 driver jt400.jar. The Native driver provides optimized access to the DB2 system, but works only from the iSeries machine. To support seamlessly both drivers with one connection, Oracle Data Integrator has a built-in Driver Wrapper for AS400. This wrapper connects through the Native driver if possible, otherwise it uses the JT400 driver. It is recommended that you use this wrapper if running agents installed on AS400 systems. To configure a data server with the driver wrapper:

1. Change the driver and URL to your AS400 server with the following information:

■ Driver : com.sunopsis.jdbc.driver.wrapper.SnpsDriverWrapper ■ URL : jdbc:snps400:machine_ name[;param1=value1[;param2=value2...]]

2. Set the following java properties for the java machine the run-time agent deployed

on iSeries: ■ HOST_NAME: comma separated list of host names identifying the current machine. ■ HOST_IP: IP Address of the current machine. The value allow the wrapper to identify whether this data server is accessed on the iSeries machine or from a remote machine.

14.10 Troubleshooting

This section provides information on how to troubleshoot problems that you might encounter when using Oracle Knowledge Modules. It contains the following topics: ■ Troubleshooting Error messages ■ Common Problems and Solutions

14.10.1 Troubleshooting Error messages

Errors in Oracle Data Integrator appear often in the following way: java.sql.SQLException: The application server rejected the connection.Signon was canceled. at ... at ... ... the java.sql.SQLExceptioncode simply indicates that a query was made to the database through the JDBC driver, which has returned an error. This error is frequently a database or driver error, and must be interpreted in this direction. Only the part of text in bold must first be taken in account. It must be searched in the DB2 or iSeries documentation. If its contains sometimes an error code specific to your system, with which the error can be immediately identified. 13 If such an error is identified in the execution log, it is necessary to analyze the SQL code send to the database to find the source of the error. The code is displayed in the description tab of the erroneous task.

14.10.2 Common Problems and Solutions

This section describes common problems and solutions.

14.10.2.1 Connection Errors

■ UnknownDriverException The JDBC driver is incorrect. Check the name of the driver. ■ The application requester cannot establish the connection.name or IP address Cannot open a socket on host: name or IP address, port: 8471 Exception: java.net.UnknownHostException:name or IP address Oracle Data Integrator cannot connect to the database. Either the machine name or IP address is invalid, the DB2400 Services are not started or the TCPIP interface on AS400 is not started. Try to ping the AS400 machine using the same machine name or IP address, and check with the system administrator that the appropriate services are started. ■ Datasource not found or driver name not specified The ODBC Datasource specified in the JDBC URL is incorrect. ■ The application server rejected the connection.Signon was canceled. Database login failed, please verify userid and password. Communication Link Failure. Comm RC=8001 - CWBSY0001 - ... The user profile used is not valid. This error occurs when typing an invalid user name or an incorrect password. ■ Communication Link Failure An error occurred with the ODBC connectivity. Refer to the Client Access documentation for more information. ■ SQL5001 - Column qualifier or table 2 undefined. SQL5016 - Object name 1 not valid for naming convention Your JDBC connection or ODBC Datasource is configured to use the wrong naming convention. Use the ODBC Administrator to change your datasource to use the proper SQL or SYS naming convention, or use the appropriate option in the JDBC URL to force the naming conversion for instance jdbc:as400:195.10.10.13;naming=system . Note that if using the system naming convention in the Local Object Mask of the Physical Schema, you must enter SCHEMAOBJECT instead of SCHEMA.OBJECT. SQL should always be used unless your application is specifically designed for SYS. Oracle Data Integrator uses the SQL naming convention by default. ■ SQL0204 1 in 2 type 3 not found The table you are trying to access does not exist. This may be linked to an error in the context choice, or in the sequence of operations E.g.: The table is a temporary table which must be created by another interface.