Connecting Strategy to an SAP BW/BI system involves a number of steps. At any step, configuration errors might prevent a connection from being made. Error messages are not necessarily straightforward to read. This article lists the most likely connectivity errors and provides the solution for each.
Users should also consult the following Strategy Knowledge Base articles for detailed configuration information in UNIX and Windows environments.
- KB11063: How to set up SAP connectivity with the Strategy Intelligence Server 9.4.1 on Windows, using JCo 2.x connector files.
- KB13302: How to set up SAP BW connectivity with Strategy Intelligence Server Universal 9.4.1, using JCo 2.x connectors.
- KB38435: How to setup SAP BW connectivity with Strategy Intelligence Server running on Windows, using JCo 3.x connectors.
- KB38537: How to set up SAP BW connectivity with Strategy Intelligence Server Universal, using JCo 3.x connectors.
Errors and explanations
- Exception in thread "main" java.lang.NoClassDefFoundError: com/sap/mw/jco/JCO
This error means that the file sapjco.jar could not be found. Verify that the required libraries have been obtained from SAP as described in the preceding articles, and that the file locations on disk are correctly configured.
- Exception in thread "main" java.lang.ExceptionInInitializerError: JCO.classInitialize(): Could not load middleware layer 'com.sap.mw.jco.rfc.MiddlewareRFC'
The file sapjcorfc.dll could not be found in the SAP JCO library location. In UNIX/Linux environments, this file may be called libsapjcorfc.a or libsapjcorfc.so. Note that the error may occur if the prerequisites are not installed as specified on SAP note 684106.
The error explanation in square brackets may vary, especially if it indicates that a system library on which sapjcorfc.dll depends is missing. For instance, on some SUSE Linux systems, the following has been seen: "." In this case, even though libsapjcorfc.so may be present, libstdc++-libc6.2-2.so.3 is absent and the appropriate system patch should be applied. (For SUSE Linux 10 SP1 the package is compat-32bit-2006.1.25-11.2.x86_64.rpm, for Red Hat Linux this is compat-libstdc++-296-2.96-138.i386.) For other system libraries that are not able to be opened, users should check with their system administrator to see if they have been installed. If so, users should verify that the library's location is part of the system's library path environment variable. Otherwise, the appropriate patch or file set should be installed.
Note that the error head, "Could not load middleware layer," is the same regardless of the specific library that could not be found. The error description in brackets is the most important part of the message.
- Unable to connect to SAP system
com.sap.mw.jco.JCO$Exception: (103) RFC_ERROR_LOGON_FAILURE: Name or password is incorrect. Please re-enter
Verify that the username and password are correct.
- com.sap.mw.jco.JCO$Exception: (102) RFC_ERROR_COMMUNICATION: Connect to SAP gateway failed
Connect_PM GWHOST=---.---.---.---, GWSERV=sapgw00, ASHOST=---.---.---.---, SYSNR=00
LOCATION CPIC (TCP/IP) on local host
ERROR connection to host 253.16.36.100, service 3300 timed out
The host name or IP address of the SAP BW/BI system is incorrect, or the machine is unavailable over the network.
- com.sap.mw.jco.JCO$Exception: (102) RFC_ERROR_COMMUNICATION: Connect to SAP gateway failed
Connect_PM GWHOST=---.---.---.---, GWSERV=sapgw99, ASHOST=---.---.---.---, SYSNR=99
...
ERRNO TEXT A remote host refused an attempted connect operation.
The SAP system number is incorrectly specified, or there is no SAP server on the specified machine.
ERRNO TEXT may also read "WSAECONNREFUSED: Connection refused" in some environments.
- com.sap.mw.jco.JCO$Exception: (101) RFC_ERROR_PROGRAM: Language 'XY' not available
The Language parameter is incorrectly specified. Choose a different language, or install the required language package in the SAP system.
- com.sap.mw.jco.JCO$Exception: (103) RFC_ERROR_LOGON_FAILURE: Client 999 is not available in this system
The client number parameter is incorrectly specified.