Debugging Error Messages

In this section:

This section provides information that allows you to interpret various error message that can be generated when connecting to SAP ERP. The adapter-specific errors that are also described in this section can also arise if you are using the adapter with an iBSP configuration.

The following locations include log file information that is relevant for debugging purposes.


Top of page

x
Error Messages in iWay Explorer

The following table lists errors and solutions when using iWay Explorer with the adapter.

Error

Solution

Cannot connect to the adapter from iWay Explorer.

Ensure that:

SAP ERP is running.

The Server name, System Number, and Client Number are correct.

The SAP ERP user ID and password are correct.

Cannot connect to the SAP ERP target through iWay Explorer. The following error message appears:

Error getting target [SAP] - 
java.lang.Exception: Error Logon 
to SAP System

Ensure that you enter the correct connection parameters when connecting to the SAP ERP target.

SAP ERP does not appear in the iWay Explorer adapter node list.

Ensure that you added the sapjco.jar and sapjcorfc.dll files to the lib directory. Ensure that you added the librfc32.dll file to the Windows system32 folder.

Cannot connect to your SAP ERP system through iWay Explorer. The following error message appears:

Problem activating adapter. 
(com.ibi.sapr3.SapAdapterException
: com.sap.mw.jco.JCO$Exception: 
(102) RFC_ERROR_COMMUNICATION: 
Connect to SAP gateway failed 
Connect_PM GWHOST=isdsrv8, 
GWSERV=sapgw00, ASHOST=isdsrv8, 
SYSNR=00 LOCATION CPIC (TCP/IP) on 
local host ERROR partner not 
reached (host isdsrv8, service 
3300) TIME Fri Aug 27 11:49:14 
2004 RELEASE 620 COMPONENT NI 
(network interface) VERSION 36 RC 
-10 MODULE ninti.c LINE 979 DETAIL 
NiPConnect2 SYSTEM CALL SO_ERROR 
ERRNO 10061 ERRNO TEXT 
WSAECONNREFUSED: Connection 
refused COUNTER 1). Check logs for 
more information.

Ensure that SAP ERP is running and that the parameter values for connecting to your server are correct.

Cannot connect to your SAP ERP system through iWay Explorer even though SAP ERP is running. The following error message appears:

Problem activating adapter. 
(com.ibi.sapr3.SapAdapterException
: 
java.lang.ExceptionInInitializerEr
ror: JCO.classInitialize(): Could 
not load middleware layer 
'com.sap.mw.jco.rfc.MiddlewareRFC' 
JCO.nativeInit(): Could not 
initialize dynamic link library 
sapjcorfc [no sapjcorfc in 
java.library.path]. 
java.library.path 

Ensure that you added the sapjcorfc.dll file to the lib directory and the librfc32.dll file to the Windows system32 folder.

The DLL is loaded in another class loader (iBSP is installed on the same server). The following error message appears:

com.ibi.sapr3.SapAdapterException: 
java.lang.ExceptionInInitializerEr
ror: JCO.classInitialize(): Could 
not load middleware layer 
'com.sap.mw.jco.rfc.MiddlewareRFC'
JCO.nativeInit(): Could not 
initialize dynamic link library 
sapjcorfc [Native Library 
F:\iWay60.008.0628\lib\sapjcorfc.d
ll already loaded in another 
classloader]. java.library.path

Ensure that you added the sapjco.jar file to the server class path.


Top of page

x
Error Messages in SAP ERP

The following table lists errors and solutions when using the adapter.

Error

Solution

When executing a request, the following error message appears:

AdapterException: 
java.lang.Exception: Function 
module CUSTOMER_GETDETAIL2 
does NOT exist.

Check the syntax of your input XML document and ensure the name of the Remote Function module is correct and is available in SAP ERP.

When executing a request, the following error message appears:

AdapterException: 
java.lang.Exception: Object 
type unknown for business 
object: CUST

Check the syntax of your input XML document and ensure the Object type is correct.

When executing a request, the following error message appears:

AdapterException: 
java.lang.Exception: Unable 
to retrieve BAPI name for: 
CUSTOMER.DETAIL2

Check the syntax of your input XML document and ensure the name of the BAPI is correct and is available in SAP ERP.

When executing a request, the following error message appears:

java.lang.RuntimeException: 
com.sap.mw.jco.JCO$AbapExcept
ion: (126) OBJECT_UNKNOWN: 
Basic type or extension does 
not exist.

Check the syntax of your input XML document and ensure the IDoc extension is correct and is available in SAP ERP.

When executing a request, the following error message appears:

AdapterException: 
java.lang.Exception: 
BapiError/BapiAbort: You are 
not authorized to display 
customers.

Make sure your user ID has the correct permissions configured in SAP ERP. For more information, consult your SAP ERP administrator.


Top of page

x
Error Messages in iBSP

The following topics discuss the different types of errors that can occur when processing web services through the iWay Business Services Engine (iBSP).

The iWay Business Services Engine (iBSP) serves as both a SOAP gateway into the adapter framework and as the engine for some of the adapters. At design time and run time, various conditions can cause errors in iBSP when web services that use adapters are running. Some conditions and resulting errors are exposed the same way, regardless of the specific adapter; others are exposed differently, based on the adapter being used. This topic explains what to expect when you encounter the more common error conditions on an adapter-specific basis.

Usually, the SOAP gateway (agent) inside iBSP passes a SOAP request message to the adapter required for the web service. If an error occurs, the way it is exposed depends on the adapter and the API or interfaces that the adapter uses. A few scenarios cause the SOAP gateway to generate a SOAP fault. In general, when the SOAP agent inside iBSP receives an invalid SOAP request, a SOAP fault element is generated in the SOAP response. The SOAP fault element contains fault string and fault code elements. The fault code contains a description of the SOAP agent error.

The following SOAP response document results when iBSP receives an invalid SOAP request:

<SOAP-ENV:Envelope 
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <SOAP-ENV:Body>
      <SOAP-ENV:Fault>
         <faultcode>SOAP-ENV:Client</faultcode>
         <faultstring>Parameter node is missing</faultstring>
      </SOAP-ENV:Fault>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

In the previous example, iBSP did not receive an element in the SOAP request message that is mandatory for the WSDL for this web service.


Top of page

x
Adapter-Specific Error Handling

When an adapter raises an exception during run time, the SOAP agent in iBSP produces a SOAP fault element in the generated SOAP response. The SOAP fault element contains fault code and fault string elements. The fault string contains the native error description from the adapter target system. Because adapters use the target system interfaces and APIs, whether an exception is raised depends on how the target systems interface or API treats the error condition. If a SOAP request message is passed to an adapter by the SOAP agent in iBSP and that request is invalid based on the WSDL for that service, the adapter may raise an exception yielding a SOAP fault.

Although it is almost impossible to anticipate every error condition that an adapter may encounter, the following examples show how adapters handle common error conditions and how error conditions are then exposed to the web services consumer application.



Example: iWay Application Adapter for SAP ERP Invalid SOAP Request

When the iWay Application Adapter for SAP ERP receives a SOAP request message that does not conform to the WSDL for the web service being executed, the following SOAP response is generated:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/
 soap/envelope/">
  <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
      <faultcode>SOAP-ENV:Server</faultcode>
      <faultstring>Error processing agent [XDSapIfrAgent] - XD[FAIL]
       SapIFRException: java.sql.SQLException:
       com.ibi.sapjco.SapCallableStatement: execute() j
       java.util.NoSuchElementException</faultstring>
    </SOAP-ENV:Fault>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>


Example: Empty Result From SOAP Request

When the iWay Application Adapter for SAP ERP executes an SAP ERP object as a web service using input parameters passed in the SOAP request message that do not match records in SAP ERP, the following SOAP response is generated:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/
 soap/envelope/">
  <SOAP-ENV:Body>
   <SOAP-ENV:Fault>
    <faultcode>SOAP-ENV:Server</faultcode>
    <faultstring>Error processing agent [XDSapIfrAgent] - XD[FAIL]
     SapIFRException: java.sql.SQLException:
     com.ibi.sapjco.SapCallableStatement: execute()
     java.sql.SQLException: JCO Error Key: NO_RECORD_FOUND Short
     Description: com.sap.mw.jco.JCO$AbapException: (126)
     NO_RECORD_FOUND: NO_RECORD_FOUND</faultstring>
   </SOAP-ENV:Fault>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>


Example: Failure to Connect to SAP ERP

When the iWay Application Adapter for SAP ERP cannot connect to SAP ERP when executing a web service, the following SOAP response is generated:

<?xml version="1.0" encoding="ISO-8859-1" ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/
 soap/envelope/">
  <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
      <faultcode>SOAP-ENV:Server</faultcode>
      <faultstring>Error processing agent [XDSapIfrAgent] - XD[RETRY]
       Connect to SAP gateway failed Connect_PM GWHOST=ESDSUN,
       GWSERV=sapgw00, ASHOST=ESDSUN, SYSNR=00 LOCATION CPIC (TCP/IP) on
       local host ERROR partner not reached (host ESDSUN, service 3300)
       TIME Mon Jun 30 16:01:02 2003 RELEASE 620 COMPONENT NI (network
       interface) VERSION 36 RC -10 MODULE ninti.c LINE 976 DETAIL
       NiPConnect2 SYSTEM CALL SO_ERROR ERRNO 10061 ERRNO TEXT
       WSAECONNREFUSED: Connection refused COUNTER 1</faultstring>
    </SOAP-ENV:Fault>
   </SOAP-ENV:Body>
</SOAP-ENV:Envelope>


Example: Invalid SOAP Request

When the iWay Application Adapter for SAP ERP receives a SOAP request message that does not conform to the WSDL for the web services being executed, the following SOAP response is generated:

<?xml version="1.0" encoding="ISO-8859-1"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/
 soap/envelope/">
  <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
      <faultcode>SOAP-ENV:Server</faultcode>
      <faultstring>RPC server connection failed: Connection refused:
       connect
      </faultstring>
    </SOAP-ENV:Fault>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>


Example: Empty Result From an iWay Application Adapter for SAP ERP SOAP Request

Note: The condition for this adapter does not yield a SOAP fault.

When the iWay Application Adapter for SAP ERP executes a SOAP request using input parameters passed that do not match records in the target system, the following SOAP response is generated:

<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance"
 xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
 xmlns:xsd="http://www.w3.org/1999/XMLSchema">
   <SOAP-ENV:Body>
      <m:RunDBQueryResponse xmlns:m="urn:schemas-iwaysoftware-com:iwse"
        xmlns="urn:schemas-iwaysoftware-com:iwse"
        cid="2A3CB42703EB20203F91951B89F3C5AF">
        <RunDBQueryResult run="1" />
     </m:RunDBQueryResponse>
  </SOAP-ENV:Body>
</SOAP-ENV:Envelope>

iWay Software