Skip to Content

Problem in payload generation for outbound proxy interface in PurchReq export to Ariba using WSDL

Hello experts,

I am trying to build Purchase Requisition export to Ariba interface using WSDL provided by Ariba.

In SAP PI I did following things -

1. In ESR, import WSDL as external definition. Save, check & activate.

2. I created SI_PurReq_Out and SI_PurReq_In service interfaces, request and response is of type external message from WSDL. Save, check & activate. The interface is synchronus.

3. In ID, I selected ECC DEV100 as Business System and sender communication channel as SAPECC_SOAP_SENDER

4. I Selected Ariba as Business Component and communication channel as CC_ReqImp_Recieve as receiver communication channel with Ariba URL and user ID password authentication

5. In Integrated Configuration,Sender Communication Component - ECC DEV100 Inbound Processing - SAPECC_SOAP_SENDER (SOAP adapter type), Receiver Communication Component - Ariba, Receiver Interface SI_PurReq_In and Outbound Processing as CC_ReqImp_Receive communication channel. Save check Activate

On ECC Side -

1. In SPROXY , generate proxy interface and test (F8). When I execute the test XML which gets generated, I am getting PARSING.GENERAL exception.

In SXMB_MONI, I can see see the request message in red and response in red.

In PI, when I see in message monitoring, the message in status "Cancelled" and in detail log, I get messages as 'Failed to call the endpoint: Error in call over HTTP: HTTP 500 Internal Server Error' and 'SOAP: Call failed: java.io.IOException: HTTP Error response for SOAP request or invalid content-type.; HTTP 500 Internal Server Error'.

2. I coded program to fill the outbound interface output parameter (Proxy generated message types). But when the proxy method is executed, exception of type cx_ai_system_fault is triggered, which has text as 'PARSING.GENERAL'.

3. I checked the payload and some of the variables which I passed value to, were not there in payload.

Has anyone got such kind of issues?

I am unable to understand if there is issue in PI interface or proxy generation on ECC side.

Regards,

Yayati Ekbote

Add comment
10|10000 characters needed characters exceeded

  • Get RSS Feed

2 Answers

  • May 21 at 06:34 AM

    Hi,

    I think, your config is outbound proxy to SOAP (Synchronous scenario).

    Please follow few suggestions, which are:

    First verfiy proxy maps:

    • Check if request map (proxy to soap) is ok with respect to your desired input.
    • this may help you to get reason of error "PARSING.GENERAL"

    Second verify soap request/response:

    • When request map is ok, next is to send the paylaod to Ariba-endpoint url.
    • You may be getting "500 internal server error", when Ariba-service responded with Soap-Fault messages
    • Check in PI's sxmb_moni -> response -> inbound payload
    • you can handle "500 internal server error" in Soap receiver channel using module parameters.

    Suggest to attach below screen for more clarity on your errors:

    • In PI's sxmb_moni -> Request's inbound payload
    • In PI's sxmb_moni -> Response inbound payload

    Regards,

    Dilip

    Add comment
    10|10000 characters needed characters exceeded

  • May 21 at 07:16 AM

    Hi Yayati,

    What I understood is this is a new development , and this interface never worked even once. Can you please check the Target URL(to ARIBA).

    Recently , ARIBA has moved to TLS1.1/TLS1.2 . So probably this could be the issue.

    Also , please capture the logs through XPI Inspector too.

    Regards,

    Vivek Jain

    Add comment
    10|10000 characters needed characters exceeded