SAP PI 7.4 SOAP - ABAP Proxy Synchronous Webservice

Hi Everyone,
I am developing the following scenario:
3rd party makes a SOAP call to SAP (via PI) to determine whether a vendor exists or not in the SAP system. The link for the call is provided by us from the Integrated Configuration.
The request comes in, calls an ABAP Proxy to check if a vendor exists and sends a response back to the SOAP call with a 'Y' or an 'N'.
I've read a lot about various scenarios but I'm having trouble connecting the dots as I'm fairly new to PI. I'd appreciate any help.
I've made the following set-up based on assuming I need separate Service Interfaces for the SOAP Request & Proxy Response
ESR
1. Message Types
     SOAP (MT_SOAP_REQ & MT_SOAP_RESP) - PROXY (MT_PRXY_REQ & MT_PRXY_REQ)
2.  Message Mappings
     MM_REQUEST    which maps MT_SOAP_REQ   to  MT_PRXY_REQ)
     MM_RESPONSE which maps MT_PRXY_RESP   to MT_SOAP_RESP)
3. Service Interfaces (Synchronous)
    (SOAP Request)
    SI_IN (Inbound Interface)       with Request = MT_SOAP_REQ and Response = MT_SOAP_RESP
   (Proxy Response)
    SI_OUT (Outbound Interface) with Request = MT_PRXY_REQ and Response  = MT_PRXY_RESP 
4. Operation Mapping
    OM_LOOKUP which maps SI_IN to SI_OUT with Request    (MT_SOAP_REQ  to MT_PRXY_REQ)
                                                                    and  Response (MT_SOAP_RESP to MT_PRXY_RESP)
I create the ABAP Proxies for each Service Interface. SI_IN contains the required coded method to check if there is a vendor.
I create the webservice and binding for SI_IN in SOAMANAGER
At this point I'm somewhat unsure - what do I need to do for SI_OUT ? Do I need to create a logical port ? how is SI_OUT associated to SI_IN (apart from the Operation)  to get the response.
ID
In the Integration Directory I've created a SOAP_SENDER communication channel for System A and SOAP_RECEIVER channel for SAP.  For the SOAP Receiver I need to specify a URL - what should this be ? Is it meant to point to the web service for SI_IN in SICF or just to the generic http://host:8000/sap/xi/engine?type=entry 
Do I need to use the HTTP_AAE adapter for the receiver instead of SOAP ?
I created an Integrated Configuration for the SI_IN Service Interface with comm channel SOAP_SENDER from System A and SOAP_RECEIVER for SAP backend.  I then got the WSDL for this to provide to the 3rd Party to test (via SOAP UI)  . Again my concern is how is the SI_IN linked to the SI_OUT to achieve the response ?
I appreciate you taking the time to go through this .  Any help is greatly appreciated.
Thanks very much
Gary

I create the webservice and binding for SI_IN in SOAMANAGER
At this point I'm somewhat unsure - what do I need to do for SI_OUT ? Do I need to create a logical port ? how is SI_OUT associated to SI_IN (apart from the Operation)  to get the response.
>>>>No need to do anything in SOAMANAGER
Do I need to use the HTTP_AAE adapter for the receiver instead of SOAP ?
>>> No. Soap adapter is fine. Configure your receiver channel as explianed in the below blog (section 4.3)
http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/70066f78-7794-2c10-2e8c-cb967cef407b?overridelayout=t…
Again my concern is how is the SI_IN linked to the SI_OUT to achieve the response ?
>>>>Your receiver determination and interface determination takes care of this.(receiver interface  & outbound processing tabs in ICo)

Similar Messages

  • SOAP to Proxy synchronous scenario

    Hi,
    Hope you are all doing well.
    I have a SOAP to Proxy synchronous scenario. As part of this scenario, the data structure of the response sent by SAP is different from the response sent back to the SOAP requester. Hence I have used request message mapping between the SOAP request sent by requester and the one passed on to SAP and response message mapping between the response sent by SAP and the one passed on to the requester. Both the message mappings are incorporated in a single Interface mapping.
    The problem is that the interface is behaving like a asynchronous one, i.e., request is passing over to SAP but though the proxy is giving a response back, the same is not coming over to XI.
    It would be really helpful if you can let me know what might have gone wrong.
    regards
    Debansu

    Hi,
    you should have that:
    1. Two Message Mapping:
    1.1. a Message Mapping for request    (called MM_request)    , from MT_SOAP_request     to   MT_Proxy_request.
    1.2. a Message Mapping for response (called MM_response) , from MT_Proxy_response   to   MT_SOAP_response.
    2. One Operation Mapping (in PI 7.1) or Interface Mapping (in PI 7.0) from SI_SOAP to SI_ Proxy with:
    2.1 in the tab "request", so from MT_SOAP_request     to   MT_Proxy_request    , give your Message Mapping "MM_request".
    2.2 in tab "response"   , so from MT_Proxy_response   to   MT_SOAP_response, give your Message Mapping "MM_response".
    3. In you Directory, you define a flow like that:
    from SI_SOAP to SI_ Proxy by using your Operation Mapping.
    If I missed nothing, that's all.
    MT = Message Type
    MM = Message Mapping
    SI =Service Interface in PI 7.1  or Message Interface in PI 7.0.
    regards.
    Mickael
    Edited by: Mickael Huchet on Oct 19, 2011 4:07 PM

  • CANNOT_READ_PALOAD error with SOAP to PROXY Synchronous interface

    Hi,
       Problem with SOAP to PROXY Synchronous interface.
    In Production client, some times we are getting the below shown error in SXMB_MONI. There is no Inbound payload also.
    <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="MAPPING">CANNOT_READ_PAYLOAD</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:Stack>Unable to read payload from the message object</SAP:Stack>
      <SAP:Retry>N</SAP:Retry>
      </SAP:Error>
    Please suggest me to resolve this.
    Thanks in advance,
    Hari.

    Hi Hari,
    In your case, check SAP Notes: 1082111 and  1060723.
    Regards,
    P.Rajesh

  • SOAP - XI- PROXY synchronous  scenario

    Hi Experts,
    I have a
    SOAP -
    XI -
    PROXY  Synchronous Scenario
    I have done the following things ESR and ID
    ESR:
    1. Created DT and respective MT for Request and Response.
    2. Created Service Interfaces with Synchronous mode with respective MT's.
    3. Created Two separate MM with respective Request and Response MT's.
    4. Created Operation Mapping and call both Request and Response Mappings in it.
    Integration Directory (ID):
    1. Configured considering Sender SOAP and Receiver ECC Services.
    2. Configured CC with required parameters in Sender SOAP CC and Receiver XI CC.
    3. Generate wsdl from Sender agreement and save it as a local file.
    I am getting error in receiver agreement. Do I need to specify any Module parameters in Module TAB for Sender CC or Receiver CC to synchronous scenario.
    Please hep me out.
    Thanks

    Hi Ram,
    I am getting error in receiver agreement. Do I need to specify any Module parameters in Module TAB for Sender CC or Receiver CC to synchronous scenario.
    It looks like you did not create a receiver agreement, or if you did, it did not match the interface that is given or configured in Interface Determination. Can you recheck your configuration?
    Regards,
    Mark

  • Web Service u0096 ABAP proxy  synchronous interface

    hi experts,
    can you suggest me how to do this scenario?
    <i><b>Web Service – ABAP proxy  synchronous interface.</b></i>

    hi,
    you can create a web service on XI
    which will call ABAP proxy (on ERP, SRM etc)
    in a synchronous way (you just need to generate the proxy class
    in TCODE SPROXY)
    then you can fill the method of your generated proxy class
    and you will have WS - ABAP proxy interface
    have a look at this to undrstand server proxy:
    /people/siva.maranani/blog/2005/04/03/abap-server-proxies
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • Message flow in SAP PI 7.31 JAVA only for ABAP Proxy synchronous scenario with Oracle DB

    Dear Experts,
    I am working on a synchronous scenario Sender ABAP Proxy <===> SAP PI 7.31 JAVA only <===> Oracle Database.I have successfully
    configured all the proxy configurations as well both Sender SOAP and JDBC receiver channels are showing no error when pinged from
    Cc monitoring in NWA.
    1.During testing at Tx SPROXY , I am triggering a message and after 5 minutes I receive an PARSING error message with 2 messages in ECC
    local IE i.e. Tx SXMB_MONI.
    Note : In NWA , I can see only 1 message that too in cancelled status.
    2.Seeing the trace of the messages I assume that the messages have not moved from sender ECC system. I am still confused with flow of message
    from the Message Audit log. Audit log of error messages.Could any one share the full Audit log of a successful message generated in SAP PI 7.31 JAVA only.
    3.I observed that the QIN Scheduler status in ECC is in INACTIVE status. There is no queue id for 2 messages generated in ECC. Does
    it should in ACTIVE status in Tx SMQR..
    Regards
    Rebecca

    Hi Thomas,
    Valuable inputs..
    1. Since I don't have any audit log for successful message, would you be able to share referring to the
    below screenshot whether the message was put into receiver JDBC adapter and JDBC adapter tried to retrieve the Select response from Oracle Database.
    2.I have done some setting in Advance mode of the receiver JDBC to increase the time out and other parameters as per SAP note but still the issue is same. If you perhaps have some experience in such scenarios, please share some input so that I can ask the Oracle Database administrator exactly what is required from our side.
    3.Regarding the slow response from Oracle , there was some suggestion that the datatype of the request and response should match the column name of the Oracle database. I did that.. Do you have any more suggestion that may be hampering the generation of the response message from the Oracle like SAP note or document.
    Regards
    Rebecca

  • Soap to proxy - synchronous error

    hi
    i am working on soap to proxy scenario.
    i am getting an error in message monitoring
    Exception caught by adapter framework: com.sap.aii.af.sdk.xi.srt.BubbleException: System Error Received. HTTP Status Code = 200: However System Error received in payload ErrorCode = DYNAMIC_CALL_FAILURE ErrorCategory = XIProxy Parameter1 =  Parameter2 = ZCL_SI_SALES_ORDER_CREATE1 Parameter3 = SI_SALES_ORDER_CREATE Parameter4 =  Additional text =  ErrorStack = Error during proxy processing
    Message E TD 604 cannot be processed in plugin mode HTTP
    [http://sap.com/xi/XI/Message/30^Error "DYNAMIC_CALL_FAILURE"]
    what could be the issue in it ?

    Hi
    It is data issue, you need to debug the proxy for more detail about this error. Take the payload and debug the proxy in SPROXY. Also check below sap note.
    1876952 - XI runtime: Determining dump in receiver system
    Regards,
    Praveen.

  • ABAP Proxy synchronous interface - access to payload

    Hi,
    I have a scenario from ABAP Proxy -> XI -> Web Service.
    On occassion, there is an issue with calling the Web Service (unavailable for instance) and an exception is returned to the ABAP Proxy for a SystemError.
    I am able to catch this exception in the proxy and output the error - for example HTTP.Exception.HTTP.Adapter.
    However, I also want to use information in the response payload to output on the error as the payload contain infrmation on why the error was thrown in the target application - for example - Format of data xxx is incorrect.
    I can get access to the request payload using interface/class IF_WSPROTOCOL_PAYLOAD=>GET_SENT_REQUEST_PAYLOAD but there does not seem to be an equivalent for GET_RECEIVED_RESPONSE_PAYLOAD !
    Have anyone done this before - use payload information in an ABAP proxy from the response payload ?
    Kind regards
    Colin.

    Hi,
    I will need the actual payload info not the status.
    I will have to debug SXI_MONITOR in CRM to see how it is obtained.
    Thanks
    Colin

  • Calling abap proxy synchronous ...

    Hi everyone.
    I have this scenario.
    abap proxy (request) -
    > XI (BPM) -
    > abap proxy (response).
    I'm able to send async the data using the proxy and i would like to send the response to other proxy.
    The best scenario for me would be if the proxy in sync, the BPM do some checks and finally, sender proxy returns the values.
    any idea of how to do this two scenarios?
    Regards,
    Inigo.

    Hi,
    >>>abap proxy (request) -
    > XI (BPM) -
    > abap proxy (response).
    are you sure that processing inside the BPM will take less then 30 sec?
    if not why do you want a syn call ? do you use this sync proxy call
    from an online report in r3 ?
    if you don't need a sync report do it in an async way:
    proxy - BPM - proxy (which writes the results to a table)
    and then from your report you can read from that table...
    one of the possibilities
    Regards,
    michal

  • ABAP Proxy synchronous call to webservices

    Hi,
          I have the following synchronous scenario.
      SAP R/3 outbound proxy <-> SAP XI <--> Webservices.
    When I try to execute the proxy Execute synchronous,I am getting the following exception caught.
    CX_AI_SYSTEM_FAULT.
    What could be the possible reason for the exception to be thrown?
    Thanks,
    Leo

    Hi,
    This exception is thrown when there is an error in XI in a sync call.
    What does your message display show in SXMB_MONI in XI ?
    Kind regards
    Colin.

  • How to handle exceptions in sender ABAP Proxy

    Hi Experts,
       I have a synchronous scenario.
       SAP R/3 System A -ABAP Proxy <-> PI <-----> SOAP< ---> Webservice
       In system 'A', a function module calls the ABAP Proxy method.
       My requirement is that if there is an exception in PI ( for example: timeout or ABAP engine error) then I want to get the exception details in the calling function module.
    For example:
    Exception in PI:
      <SAP:Error xmlns:SAP="XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
    <SAP:Category>XIAdapterFramework</SAP:Category>
    <SAP:Code area="MESSAGE">GENERAL</SAP:Code>
    <SAP:P1/><SAP:P2/>
    <SAP:P3/><SAP:P4/>
    <SAP:AdditionalText>com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.net.ConnectException: Connection timed out: connect</SAP:AdditionalText>
    <SAP:ApplicationFaultMessage namespace=""/>
    <SAP:Stack/>
    <SAP:Retry>M</SAP:Retry>
    </SAP:Error>
    In the calling function module:
    Try
    Call to proxy-> method
    Catch cx_ai_system_fault INTO v_o_fault.
           v_err_msg1 = v_o_fault->GET_TEXT( ).
           v_err_msg2 = v_o_fault->errortext.
           v_err_msg3 = v_o_fault->code.
    Endtry.
    Here I get value "MESSAGE.GENERAL" for  v_err_msg1 and v_err_msg3. v_err_msg2 is blank.
    I want to capture the info available under <SAP:AdditionalText>. How to get that?
    Please help!
    Thanks & Regards
    Gopal

    >
    gopalkrishna baliga wrote:
    > Hi Experts,
    >
    >    I have a synchronous scenario.
    >
    >    SAP R/3 System A -ABAP Proxy <-> PI <-----> SOAP< ---> Webservice
    >
    >    In system 'A', a function module calls the ABAP Proxy method.
    >
    >    My requirement is that if there is an exception in PI ( for example: timeout or ABAP engine error) then I want to get the exception details in the calling function module.
    >
    >  For example:
    >
    > Exception in PI:
    >
    >   <SAP:Error xmlns:SAP="XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
    > <SAP:Category>XIAdapterFramework</SAP:Category>
    > <SAP:Code area="MESSAGE">GENERAL</SAP:Code>
    > <SAP:P1/><SAP:P2/>
    > <SAP:P3/><SAP:P4/>
    > <SAP:AdditionalText>com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.net.ConnectException: Connection timed out: connect</SAP:AdditionalText>
    > <SAP:ApplicationFaultMessage namespace=""/>
    > <SAP:Stack/>
    > <SAP:Retry>M</SAP:Retry>
    > </SAP:Error>
    >
    > In the calling function module:
    > Try
    >  Call to proxy-> method
    >
    >  Catch cx_ai_system_fault INTO v_o_fault.
    >        v_err_msg1 = v_o_fault->GET_TEXT( ).
    >        v_err_msg2 = v_o_fault->errortext.
    >        v_err_msg3 = v_o_fault->code.
    > Endtry.
    >
    > Here I get value "MESSAGE.GENERAL" for  v_err_msg1 and v_err_msg3. v_err_msg2 is blank.
    >
    > I want to capture the info available under <SAP:AdditionalText>. How to get that?
    >
    > Please help!
    >
    > Thanks & Regards
    > Gopal
    Hi Gopal,
    Maybe the exception is CX_SY_APPLICATION_FAULT, or you can catch by BPM in PI and send back to proxy like a message response.

  • Error with ABAP proxy

    Hi all,
    I have an ABAP proxy - XI - Webservice scenario, in the XI side we are getting error saying input data not coming in. How to check weather proxy is triggering the actual payload or data?
    There has been a change in the WSDL from the Webservices side, they have changed the data type, so we too updated the mapping in XI. So do we need to change anything in the ABAP program which triggers the proxy,
    how do I check weather proxy is triggering data or not?
    I want to see weather its problem with the ABAP trigger program.
    Thanks,
    Srinivas

    Hi ramakrishna,
    Does R/3 side SXMB_MONI give successful chequered flag when the message is processed?
    Because for correctly processed message, the data is being updated in the table, but I can't see the chequered flag on the R/3 side.
    But for the wrongly processed ones its showing PL_TIMEOUT error and showing red flag on R/3 side, this is what I see on the R/3 side:
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Integration Server
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="INTERNAL">PL_TIMEOUT</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>Pipeline timeout condition satisfied</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>

  • HTMLError in sxmb_moni, Idoc to ABAP Proxy Scenario

    Hi Friends
    I am trying to send data from R3 to SCMTM system(SAP System), via Idoc to ABAP Proxy Scenario ,I am getting the following under HTMLError in sxmb_moni
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="INTERNAL">CLIENT_RECEIVE_FAILED</SAP:Code>
      <SAP:P1>400</SAP:P1>
      <SAP:P2>ICM_HTTP_CONNECTION_FAILED</SAP:P2>
      <SAP:P3>(See attachment HTMLError for details)</SAP:P3>
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:Stack>Error while receiving by HTTP (error code: 400, error text: ICM_HTTP_CONNECTION_FAILED) (See attachment HTMLError for details)</SAP:Stack>
      <SAP:Retry>A</SAP:Retry>
      </SAP:Error>
    Any ideas will be helpful.

    Hi,
         I faced similar problem. it was due to configuration problem in SXMB_ADM. corss check  specific server confiration in SXMB_ADM.
    /people/krishna.moorthyp/blog/2006/07/23/http-errors-in-xi
    Regards,
    Reyaz

  • ABAP Proxy, WEB SERVICE and RFC

    Hi
    I have to pull the data from XI.
    I have the PDFdocument of how to integrate XI with BI.
    But i am not clear what is abap proxy and web service.
    Could anyone let me know basic of what is abap proxy and webservice.
    Is abap proxy and webservice are present in both the systems XI&BI ?
    REgards
    annie

    Hi,
    ABAP proxy is a  connection between SAP XI & BI . For all the connections need to chk  in SM59, and SICF .
    proxies are a replacemet for adapters whereas webservices(WSDL) are replacements for data typesYou generate proxies from an interface description in WSDL (Web Service Description Language) by using ABAP proxy generation.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/46d6c25d-0b01-0010-06a9-8e8218753c02
    The SOAP adapter enables you to exchange SOAP messages between remote clients or Web service servers and the Integration Server. Also you can use the axis framework with SOAP adapter. Check this help:
    http://help.sap.com/saphelp_nw04/helpdata/en/45/a4f8bbdfdc0d36e10000000a114a6b/content.htm
    We can Communicate between SAP System & Webservice Using Proxies. Check this weblog for some information on this:
    /people/siva.maranani/blog/2005/05/23/communication-between-sap-system-webservice-using-proxies
    ABAP Proxy -> XI -> Webservice :
    pls chk this links;
    /people/shabarish.vijayakumar/blog/2006/03/23/rfc--xi--webservice--a-complete-walkthrough-part-1
    http://www.webservicex.net/WS/WSDetails.aspx?CATID=4&WSID=59
    /people/thomas.jung3/blog/2004/11/17/bsp-a-developers-journal-part-xiv--consuming-webservices-with-abap
    https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/3022- [original link is broken] [original link is broken] [original link is broken] Activate Proxy
    /people/siva.maranani/blog/2005/04/03/abap-server-proxies -ABAP Server Proxy
    /people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy - ABAP Client Proxy
    /people/siva.maranani/blog/2005/09/03/invoke-webservices-using-sapxi
    /people/ravikumar.allampallam/blog/2005/03/14/abap-proxies-in-xiclient-proxy
    Hope this helps,
    Regards
    CSM Reddy

  • IDoc vs ABAP Proxy

    Hi experts,
    I have a couple of integration scenarios as such
    SAP -> XI -> SOAP
    We have a couple of options for the link between SAP -> XI.
    1. ABAP Proxy
    2. IDoc
    These are usually asynchronous updates to the external system, triggered from SAP.
    Which method is better in terms of performance, and maintainability point of view.
    Currently, I chose the IDOC approach because if we were to go with the ABAP Proxy approach, the SAP system requires an XI ADD-ON, which implies additional risk.
    Any advise is greatly appreciated.
    Thanks.
    Ron

    Ron,
    Take a look at this blog, it should answer your question of when to choose Idoc's and when to go for proxies,
    <a href="/people/ravikumar.allampallam/blog/2005/08/14/choose-the-right-adapter-to-integrate-with-sap-systems">Choose the Right Adapter to integrate with SAP systems</a>
    If your load is high, then SAP strictly recommends proxies. If load is not very high and you have standard Idoc's available for this, you might as well go for Idoc's.
    Regards
    Bhavesh

Maybe you are looking for