General Issues with C4C Integration using SAP PI/PO
This blog talks about different issues involving with SAP Hybris Cloud For Customer Integration using SAP PI/PO. While you integrate your SAP Hybris Cloud for Customer solution with SAP ERP, SAP CRM or any external system using SAP PI/PO issues may arise because of improper configurations or improper data communications.
Below are some of the general issues:-
While Replicating data from C4C to ERP/CRM/S4 using SAP PI, messages fail in C4C Web Service Message Monitoring with below error: –
“com.sap.aii.af.service.cpa.CPAObjectNotFoundException: Couldn’t retrieve inbound binding for the given P/S/A values: FP=;TP=;FS=C4C_BS;TS=;AN=BusinessPartnerReplicationSelfInitiatedOut;ANS=http://sap.com/xi/AP/CRM/Global;”
Sometimes above error is only displayed in the C4C backend and you will be able to see only “ADAPTER.JAVA_EXCEPTION” in the C4C Web Service Message Monitoring.
Above error is related to Business Partner Replication interface from C4C to ERP using SAP PI and is one of the generic error found in outbound interfaces from C4C involving SAP PI.
Error can be seen in the Web Service Message Monitoring
There are many causes for this kind of error: –
Problems within C4C: –
- Service URL used in Communication Arrangement to call SAP PI interface is not correct
Solution: – Check if the Service URL matches the HTTPs URL in SAP PI Sender Agreement/ICO WSDL
Problems with SAP PI: –
- Interface is not configured/activated properly
- Interface Sender Channel is in error/not activated/locked
- Cache is not updated properly
- Reactivate the Sender Agreement and Sender Communication Channel
- Restart the Communication Channel
- Remove the Channel Locks if any
- Delta Cache Refresh/Full Cache Refresh
Problems with the Web Dispatcher
- Routing to SAP PI interface is not maintained correctly in Web Dispatcher
If the issue is not resolved, you can take XPI inspector traces in SAP PI while reproducing the issue.
XPI inspector traces will trace any of the error while the message is entering in SAP PI
Below is the Wiki Link to know more about XPI inspector traces:-
Synchronous messages failing in C4C with below error: –
“<?xml version=”1.0″ encoding=”utf-8″?><ERROR_CONTEXT><ERROR_INFO><SOAP_FAULT xmlns:SOAP=”http://schemas.xmlsoap.org/soap/envelope/”><faultcode>SOAP:Server</faultcode><faultstring>Server Error</faultstring><detail><s:SystemError xmlns:s=”http://sap.com/xi/WebService/xi2.0″><context>XIAdapter</context><code>ADAPTER.JAVA_EXCEPTION</code><text>java.io.IOException: Parsing Error: org.xml.sax.SAXParseException: Premature end of file.at com.sap.aii.af.sdk.xi.mo.DefaultItem.marshal(DefaultItem.java:522)at com.sap.aii.af.sdk.xi.mo.Message.rebuildRootDocument(Message.java:882)”
This issue could happen with C4C interfaces related to External Pricing, Document Flow Query and Print Preview or any other Synchronous interface.
This issue will only occur if the response coming back from SAP PI is empty or having some malformed XML.
Sync message must be traced out in SAP PI.
Message processing can be checked in SAP PI Message Monitoring component, make a real time call from C4C and track the corresponding message in SAP PI.
For Synchronous interfaces, there will be 2 entries in the message monitoring: –
- C4C to ERP: – In this flow request mapping is executed and output is sent to ERP. Check tcode srt_util in ERP to check if the message came and a proper response has been sent out
- ERP to C4C: – In this flow response mapping is executed and the response is sent back to C4C, check the payloads under Open Message BM (before mapping) and AM (after mapping). If the AM response is empty/malformed XML etc., the this could be the reason for Parser Exception.
Response mapping can be tested in SAP PI ESR using Test Tab with XMl payload came from SAP ERP.
When sending inbound message to the C4C, the message fails with below error message: –
“SRT: Plain SOAP: Reliable messaging (RM) configured, but no Messaging ID and no WSRM assertion provided”
Make sure the protocol defined in the Communication System of Cloud for Customer should be selected as Web Services. Target URL configured in the SAP Middleware or any third-party tool for C4C Inbound Service should have Message ID added to the end of it as shown in the below example.
Also, SOAP receiver channel should have “Encoded Headers” parameter checked
Where to download latest SAP PI Mapping content for C4C integration?
Required Software Components as mentioned in the Integration Guide can be downloaded from the above link
Below are more links related to C4C integration issues:-