IBM Support

ObjectConnect now runs over a TCP/IP server STRTCPSVR(*OBJC)

How To


Summary

ObjectConnect is a set of control language (CL) commands for copying objects between systems easily and efficiently. These commands include SAVRST, SAVRSTCFG, SAVRSTCHG, SAVRSTDLO, SAVRSTLIB, and SAVRSTOBJ.

Objective

ObjectConnect now runs over TCP/IP and is documented as well in the following link: ObjectConnect over TCP/IP

Environment

ObjectConnect is included with the IBM i standard installation media set. You install it by selecting it on the 'Install licensed programs' display and selecting Option 22 OBJECTCONNECT from that menu. When you use an ObjectConnect command, the system copies the object directly to the target system without using save files or distribution queues. ObjectConnect provides better performance than some other methods for copying objects between systems, and ObjectConnect does not require more disk space to store an intermediate copy of the object that is being copied.
Requirements are:
  • Currently, this functionality is only available starting at IBM i 7.4.
  • 5770SS1  Option 22 – ObjectConnect must be installed on both the source and target systems.
  • PTF SI73777, SI74485, MF67585, and SI74688 and all of the Co-Requisite and Pre-Requisite PTFs. As of 11/19/22, the latest superseding fixes are: SI77588, SI79575, MF69039, and SI79408. As a general rule, apply the latest superseding fixes.
  • SI73777 or later supersede makes the CHGOBJCA command available to create the server.   Once you have the PTFs applied, you are able to create and use the TCP/IP server to connect to remote systems

Steps

After all requirements are satisfied the ObjectConnect TCP/IP server can be configured.  To do that, perform the following:
  • Before configuring the ObjectConnect server by using CHGOBJCA, associate a Certificate to the ObjectConnect server (QIBM_QSVR_OBJC_SERVER) and client (QIBM_QSVR_OBJC_CLIENT).
  • The user profile QOBJC is created when installing ObjectConnect over IP.
  • CHGOBJCA can be used to configure the ObjectConnect server.
  • The ObjectConnect Server can be started using the STRTCPSVR SERVER(*OBJC) command.

A Walkthough of DCM Certificate Creation and Application Assignment for OBJC
This video shows how to create and associate a certificate for ObjectConnect using Digital Certificate Manager, and shows a successful test of ObjectConnect.

There are two methods of running ObjectConnect commands

To run ObjectConnect commands over TCP/IP you must specify the Connection type as *IP, and provide the Remote location name (RMTLOCNAME), as well as the Remote user ID (RMTUSR), and Remote password (RMTPWD). There are two methods to do this.
Method 1: Providing the Remote user ID and Remote password in the ObjectConnect Command
You may choose to run your ObjectConnect command and provide all of the required connection parameters in the command itself. This example uses SAVRSTOBJ to send an object to a remote system called ROCHESTER.

SAVRSTOBJ OBJ(TESTOBJ) LIB(TESTLIB) RMTLOCNAME(ROCHESTER)
CNNTYPE(*IP) RMTUSER(IBMUSER) RMTPWD(IBMPASSWORD)

 
Method 2: Using a Server Authentication Entry (SVRAUT)
Alternately, you may create a Server Authentication Entry (SVRAUT) to save the remote connection details, and use a Remote user ID of *SVRAUT in your ObjectConnect command. To do this, run the Add Server Authentication Entry (ADDSVRAUTE) command, and specify the local user profile, remote location, and remote user ID and password. For example, you can create a Server Authorization Entry to define that when the local user profile SYSAUSER is used to communicate to the ROCHESTER remote location, the User id IBMUSER is passed with the password IBMPASSWORD to that system:
ADDSVRAUTE USRPRF(SYSAUSER) SERVER(ROCHESTER) USRID(IBMUSER) PASSWORD(IBMPASSWORD)
Once your SVRAUT is created, you can specify RMTUSR(*SVRAUT) in your ObjectConnect command, instead of providing a user ID and password. When the ObjectConnect command is run, the user profile of the job running it, and the RMTLOCNAME specified, are used to obtain the user ID and password from the SVRAUT table.
SAVRSTOBJ OBJ(TESTOBJ) LIB(TESTLIB) RMTLOCNAME(ROCHESTER)
CNNTYPE(*IP) RMTUSER(*SVRAUT)
Note: IBM i 7.4 requires that the Retain Server Security Data (QRETSVRSEC) system value be set to '1' to retain the security data needed by a server for authentication. At IBM i 7.5 this requirement was removed. Further information on the QRETSVRSEC system value is available in the IBM i 7.5 Memo to Users.

Additional Information

ObjectConnect PTFs

PTFs for ObjectConnect are included in the Backup, Recovery, & Media Services (BRMS) PTFs, and documented on the BRMS Wiki.
Here are some of the additional PTFs that must be on both systems when using this function: MF68276 (7.4), SI75262 (7.4) and SI75827 (7.4) (Latest supersedes as of 11/19/22: MF69039, SI81324 and SI77588.)

Common Error Messages

  • If no certificate has been associated to the ObjectConnect server (QIBM_QSVR_OBJC_SERVER) you will receive the message CPDBC82, "No certificate is available for TLS processing." when you run the STRTCPSVR *OBJC command.
    • The OBJC Log file will likewise contain the error: "qsvrGsk-initGskEnv No cert is assigned"
  • Once you assign a new Server Certificate, end and restart the *OBJC server.

Accessing the OBJC log file

Errors that are received on a client when running an ObjectConnect command will be seen in the typical user joblog, and details. For investigating errors with the ObjectConnect server, access the OBJC log file.
  • Error logs for ObjectConnect commands are found in the /QIBM/UserData/OS400/OBJC/LOG file.
  • Logging to this file is controlled by the /QIBM/UserData/OS400/OBJC/LOG.CFG file.
Caption Caption
LOG.CFG file parameter Usage
LOGSIZE=10 Specifies the log size threshold in MB. The LOG file is renamed to LOG.OLD when it reaches the limit specified. If a LOG.OLD file exists, it is unlinked and cleaned up. When size is 0, no logs are generated.
LOGLEVEL=3 The loglevel can be 1–4. 4 indicates a full trace of ObjectConnect will be dumped.
DUMPFLIGHTRECORD=YES DUMPFLIGHTRECORD will try to dump a full trace when an error occurs, even if LOGLEVEL is not set to 4. The dump flight record will be located in LOG.ERR.

Document Location

Worldwide

[{"Type":"MASTER","Line of Business":{"code":"LOB57","label":"Power"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SWG60","label":"IBM i"},"ARM Category":[{"code":"a8m0z000000cwp6AAA","label":"Save Restore"},{"code":"a8m3p000000GoLpAAK","label":"Save Restore-\u003EBackup and recovery"}],"ARM Case Number":"","Platform":[{"code":"PF012","label":"IBM i"}],"Version":"7.4.0"}]

Document Information

Modified date:
01 August 2023

UID

ibm16379114