SAP RFC Agent Preparations

To be able to use the SAP RFC profile and processing agent:

  1. Extract the SAP JCo library binaries:

    tar xvfz sapjco3-<platform_version>.tgz
  2. Add the extracted file sapjco3.jar to the classpath for the jar files for the relevant EC and the Platform. In the example below, the SAP jar files are located in MZ_HOME/3pp. The configuration includes the jar files required to use any of the SAP CC agents, and the Platform database is Derby.

    Note!

    Ensure that you include existing paths, so that they are not overwritten.

    $ mzsh topo get topo://container:<container>/pico:<ec>/obj:config.classpath
    $ mzsh topo get topo://container:<container>/pico:platform/obj:config.classpath

    Example - Setting classpath

    EC (ec1):

    $ mzsh topo set topo://container:main1/pico:ec1/obj:config.classpath.jars '
    ["lib/picostart.jar",
    "3pp/common_message.jar",
    "3pp/common_util.jar",
    "3pp/core_chargingplan.jar",
    "3pp/core_chargingprocess.jar",
    "3pp/core_client.jar",
    "3pp/logging.jar",
    "3pp/sap.com~tc~logging~java.jar",
    "3pp/sapjco3.jar"]'

    Platform:

    $ mzsh topo set topo://container:main1/pico:platform/obj:config.classpath.jars '
    ["lib/derby.jar",
    "lib/picostart.jar",
    "lib/javassist.jar",
    "lib/codeserver.jar",
    "lib/codeserver_common.jar",
    "3pp/sapjco3.jar"]'
  3. Create a jni folder in the MZ_HOME directory in both the Platform and Execution Container. Place the libsapjco3.so file in both the MZ_HOME/jni directories.

  4. Add the MZ_HOME/jni directory as an additional library file along with MZ_HOME/common/lib/native using the following topo command.

    mzsh topo set topo://container:main1/val:common.java.library.path '${mz.home}"/common/lib/native:"${mz.home}"/jni"'

    Note!

    If the common/lib/native directory does not exist in your MZ_HOME, you can create the directory before running the command above.