Webservice response in BPM scenario

I am doing a BPM scenario where I take data from ERP asynchronously using proxy and send it as a request to a third party synchronous webservice. The webservice gives a response and I am using the response to send it further along to other systems.
Everything works fine if correct messages are sent and received. The problem starts when PI/BPM receives an un-expected response from the webservice. If the webservice sends an unknown error message in the response, the mapping fails and goes into the error queue. (smq2)
And the real problem is every successful message or response after that also goes into the same queue and getting stuck. Why is this happenning? Do we need to monitor and clear the error queues all the time so that subsequent successful messages go through BPM corrrectly?
Do you guys think it is a cache problem or something else?
Thank you.

this is because there is no proper error handling in your BPM.
you need to handle the exceptions in case of mapping or communication failures.
refer : http://help.sap.com/saphelp_nw04/helpdata/en/33/4a773f12f14a18e10000000a114084/frameset.htm

Similar Messages

  • Webservice to JDBC BPM scenario

    Hi Experts,
    I have created the below objects for the Webservice to JDBC BPM scenario.
    Data Type
    1. DT_SOAPRequest
    2. DT_SOAPResponse
    3. DT_JDBCRequest
    4. DT_JDBCResponse
    MessageType
    1. MT_SOAPRequest
    2. MT_SOAPResponse
    3. MT_JDBCRequest
    4. MT_JDBCResponse
    Message Interface
    1. MIIS_JDBC_In  - Inbound Synch(With JDBCRequest(Input message) and JDBCResponse(Output message)
    2. MIOS_SOAP_Out - - Outbound Synch(With SOAPRequest(Input message) and SOAPResponse(Output message)
    3. SOAPRequest_ABS - Abstract Asynch for SOAP Request
    4. SOAPResponse_ABS - Abstract Asynch for SOAP Response
    5. JDBCRequest_ABS - Abstract Asynch for JDBC Request
    6. JDBCResponse_ABS - Abstract Asynch for JDBC Response
    Is the object are correct?
    Already raised the same below request..but still confused with BPM flow
    BPM scenario
    Please help me out..
    Thanks in Advance
    Sara

    Hi Sara:
    Container variable : You have to create 3 variables...
    1. Name : ReceiveMessage
       Category : Abstract 
       Type : MI_AA_SOAP_Req
    2. Name : SendSynch
       Category : Abstract 
       Type : MI_AS_SOAP_ReqResp
    3. Name : Send
       Category : Abstract 
       Type : MI_AA_SOAP_Resp
    BPM Steps:
    1. Create Receive Step :
    In properties :
    Message = MI_AA_SOAP_Req
    Mode = Open S/A Bridge
    Synchronous INterface = MI_AS_SOAP_ReqResp
    2. Create Send Step
    In propereties :
    Mode = Synchronous
    Synch Interface = MI_AS_SOAP_ReqResp
    Req Message = MI_AA_SOAP_Req
    Resp Message = MI_AA_SOAP_Resp
    3. Again create Send step
    In propereties :
    Mode = Close S/A Bridge
    Message = MI_AA_SOAP_Resp
    Opened by = Receive
    I almost provide you each step to create BPM:)
    Try and let me us now if you find any difficulty.
    Thanks
    Farooq.

  • Webservice - XI - JDBC BPM scenario

    Hi Experts,
    Could you please provide the steps to do the Webserive -> XI -> JDBC scenario, using BPM?
    Regards
    Sara

    Hi Jai,
    Actually, I have to do multiple orchestrations scenarios.
    I came to know from some of the XI experts that I have to use BPM to do multiple orchestration scenarios.
    If you have any idea, could you please provide the BPM steps for the (Webservice to JDBC synch scenario)
    Regards
    Sara

  • Need inputs for FILE-Webservice-File using BPM scenario

    Hello All,
    can any one tell me how to do the file-webservice(soap adapter)-file with out BPM.
    If we cant do with out BPM then, please let me know after importing the WSDL file, how many Message interfaces i need to create what are they.
    Thanks and Regards,
    chinna

    Hi Chinna,
    Check this links for the receiver side SOAP configuration
    http://help.sap.com/saphelp_nw04/helpdata/en/29/5bd93f130f9215e10000000a155106/frameset.htm
    /people/shabarish.vijayakumar/blog/2006/03/23/rfc--xi--webservice--a-complete-walkthrough-part-1
    /people/shabarish.vijayakumar/blog/2006/03/28/rfc--xi--webservice--a-complete-walkthrough-part-2
    Sender side File adapter configuration is as usual
    > please let me know after importing the WSDL file, how many Message interfaces i need to create what are they.
    It is a synchronous scenario so you need to create the two message interfacess for the sender (one is for request message and another is for response message). For receiver you don't need to create any message interfaces, because the WSDL internally having the two messages (request and response).
    Regards
    Ramesh

  • Webserice to JDBC BPM scenario

    Hi Experts,
    I have created the below webservice to JDBC BPM scenario.
    IR
    Data Type
    1. DT_SOAPRequest
    2. DT_SOAPResponse
    3. DT_JDBCRequest
    4. DT_JDBCRequest_response
    Message Type
    1. MT_SOAPRequest
    2. MT_SOAPResponse
    3. MT_JDBCRequest
    4. MT_JDBCRequest_response
    Message Interface
    1. SOAP_Out_Sync_ReqResp
    2. SOAP_Abs_Sync_ReqResp
    3. SOAP_Abs_Async_Req
    4. SOAP_Abs_Async_Resp
    5. JDBC_In_Sync_ReqResp
    Message Mapping
    1. MM_Request ( MT_SOAPRequest to MT_JDBCRequest)
    2. MM_Response (MT_JDBCRequest_response to MT_SOAPResponse)
    Interface Mapping
    IM_SOAP_TO_JDBC (SOAP_Abs_Sync_ReqResp to JDBC_In_Sync_ReqResp)
    Integration Process
    IP_SOAP_TO_JDBC
    Container Variable
    1. ReceiveMsg - SOAP_Abs_Async_Req
    2. SendMsg - SOAP_Abs_Async_Resp
    Process
    1. Receive Step:
    Message : ReceiveMsg
    Mode : Opens S/A bridge
    Sync Interface : SOAP_Abs_Sync_ReqResp
    2. Send Step:
    Mode :  Sync
    Sync Interface : SOAP_Abs_Sync_ReqResp
    Request Message : ReceiveMsg
    Response Message : SendMsg
    3. Send Step:
    Mode : Closes S/A bridge
    Opend by : Receive step
    ID
    Business Service & communication channel
    1. BS_SOAP ( For Sender Interface, I have mentioned SOAP_Out_Sync_ReqResp -->Is this correct)
       a) CC_SOAP - Default Interface Name : What we have to give here ?SOAP_Out_Sync_ReqResp or SOAP_Out_Sync_ReqResp
    2. BS_JDBC ( Receiver Interface : JDBC_In_Sync_ReqResp)
    One more question, while creating webserive which interface name we have to give Abs_Sync or Outbound_Sync? Not comfortabel with Configuration part, please share your inputs.
    Regards
    Sara

    Hi Sekhar,
    I need info on only Message Interface in SOAP Service, SOAP CC and while creating webserivce from Integration Directory -> Tools -> Define webservice -> 3rd step. I have done with the remaining Sender Agreement, Receiver Agreement, Receiver Determination, Interface Determination..
    Confusion is, I have to use whether SOAP_Abs_synch or  SOAP_Outbound_synch interface...
    Regards
    Sara

  • BPM scenario requirement

    Hi,
    I am working on a BPM process in SAP XI3.0 which looks as follows:
    SAPR/3 Idoc(asynch) --->SAP XI BPM asynch abstract receive --->Transformation(Idoc to Webservice request)
    --->BPM Synch abstract send&receive ->External synch webservices->webservice response send--->
    Transformation ->SAP R/3 receive send-> stop.
    Since we have SAPWAS620 as SAP system,we define the response structure manually to generate proxy(Please note that WAS620 does not support generation of proxies based on external definitions like WSDL)and handle the response from Webservice in SAP.
    The question is : I have 2 send steps after the webservice call.I can give receiver as SAP for the send step SAP R/3 receive send.But I am unable to give the
    receiver for webservice response send.
    Because of this I am getting receiver determination error message in SXMB_MONI.
    Is there a possibility to give some dummy receiver in BPM to avoid the reciver determination error message.
    Apart from the error message,the BPM is working fine.
    If any of the forum members have worked on a similar scenario,I request them to provide valuable inputs.
    Thanks,
    Leo

    Hi Udo,
    I don't need receiver for the synchronous call.But to handle the response from the synchronous call,I have 2 abstract aynch interfaces(2 send steps).One refers to the response part of the WSDL and second refers to the manually defined message type(similar to the response part of WSDL).
    I can provide the receiver for the second one but not for the first one.Probably I can provide a dummy receiver for the first one and close the issue.
    Thanks,
    Leo

  • Synchronous bpm scenario

    Hi All,
    I am doing scenario in which my sender ORION is webservice (It is synchronous to synchronous scenario)
    I have to use bpm for this,
    We are receiving webservice in XI and sending it to another PI system where i m doing soap look up (request,response mapping) and i m getting response in BPM and some transformation i have to do and send it back to the ORION.
    Can you poeple please suggest me steps how to execute in BPM,I have tried doing it as a asynchronous request from ORION and sending ASYNCHRONOUS response.
    Now requirement is changed they want us to do synchronously,
    Wht will be the BPM scenario of this?In BPM we cant have sync receive,We can open sync async bridge but that also we cant use in this case
    Please suggest me on this
    Thanks
    Best Regards,
    Harleen Kaur Chadha

    Hi,
    Yes you can do it in BPM. You need to do the following steps.
    Step 1.Receive step, receive request from ORION with mode as Open S/A bridge
    Step 2. Send Step, mode as Synchronous, synchronous send to PI and gets the response back from PI.
    Sep 3. Send Step, mode as Close S/A bridge , this will synchronously send the response back to ORION.
    In between you can have your transformation steps for any mappings.
    thanks
    amit
    reward point if answer is helpful

  • Receiver Determination steps for BPM scenario

    Hi Experts,
    Scenario : SOAP -> Calling different webservices
    1. SOAP Client Request
    2. Call the Initial webserive to get the unique Id. No need to pass any request to call this webservice, but it will give the response.
    3. Take the Initial websrevice's response as a request to second webservice
    4. Pass the SOAP client request to Third webservice
    BPM steps
    1. Receive Step for SOAP Request
    2. Send Step for the Initial webservice call.
    3. Transformation step Initial webservice response to request change.
    4. Send Step for Second webservice (Pass the the Transformation step's target interface as a request)
    5. Send Step for Third webservice ( Pass SOAP client request)
    I am done with the BPM flow. Could you please help to do the Receiver Determination steps.
    Usually I follow the below steps.
    1. Sender Service to BPM
    2. BPM to other services. I have a doubt with the second step. I am not passing the SOAP client request to Initial webservice. So, please tell me how to proceed further for the BPM Receiver Determination steps..
    Thanks & Regards
    Sara

    Hey,
         First, what is th purpose of your SOAP client request.
    Is it just to trigger the BPM.
    Second on what basis are you fetching the unique Id from initial web service.
    If it is a normal scenario then, the reciever determination will be like this.
    Soap client-> BPM
    BPM->initial webservice
    BPM->second webservice
    BPM->third webservice
    but in this particular scenario i dont know which data is being used to fetch the unique Id.
    regards,
             Milan

  • Send back IDOC ack with details  to  webservice response ?

    Hi Friends ,
    Can we send IDOC acknowledgment  as SOAP response . Our scenario is say for example create SO via Webservice call . Our requirement is to use IDOC only not RFC/BAPI etc . Even we know that IDOC is asynchronous we need to return the SO number which is created .So ,
    1. Can we get Ack with SO number which is created and map to Webservice response filed ? 
    Thanks .,
    V.Rangarajan

    Hi Rangrajan,
    You Have to Identify in which Idoc you want to get the response back in R3 then Map Response of Webservice that contains SO to the idoc identified and you well get all the things you require in R3.
    Let me make few things clear:
    You have to use BPM for this
    ALEAUD is for IDOC acknowledgment not for Idoc response (There is difference between ack and response). So it will not serve your purpose.
    Report IDX_ALEREQUEST is to convert the idoc acknowledgment (ALEAUD) to XML formate.
    Thanks
    Sunil Singh

  • File to RFC to File with BPM Scenario

    Hi all,
       I am trying to implement a Sender File ( async )  to RFC (sync ) to Receiver File with a BPM. I using the blog  https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/1926. [original link is broken] But it doesn’t work.  First message FileRequestOut is correct in SXMB-MONI, but the second is showing a error. I checked in SXMB-MONI-BPE and I say in workitem is follow message:
    Message Error Workflow
    ‘ Error handling for work item 000000001714
    Work item 000000001714: Object CL_SWF_XI_MSG_BROKER method SEND_SYNCHRON cannot be executed
    No reference message specified when sending a response
    No reference message specified when sending a response’
      I configured my BPM scenario in this way:
      ( Sender File Adapter )
      First Step
      Receiver Step ( Asynchronous )
      Mode:  Asynchronous
      Receive Message: File Request
      ( Receiver RFC Adapter )
      Second Step
      Send Step ( Synchronous ) 
      Mode: Synchronous
      Request Message: File Request
      Response Message: File Response
      Receiver From: Send Context
      ( Receiver File Adapter )   
      Third Step
      Send Step (Asynchronous )
      Mode:  Asynchronous
      Receive Message: File Response
      Receiver From: Send Context
       I have changed it, many times and I can get solve it.  About my configuration objects, I think it is ok, because a tested my Interfaces in Configuration Test Tools it was ok. ( Receiver Det. Interface Mapping, etc…)
        I have seen in SDN, this error maybe Sencond Step must be Synchronous e  Third Step must be Synchronous too. Is it true? In other hand, I have seen, it is possible to use a Async / Sync Brigde.
         Could you help me about this problem?
          Thanks for help
          Best regards
          Fábio Ferri
          Consultant XI/ABAP/Netweaver

    Hi ,
            <b><i> I have seen in SDN, this error maybe Sencond Step must be Synchronous e Third Step must be Synchronous too. Is it true? In other hand, I have seen, it is possible to use a Async / Sync Brigde.</i></b>
                     In BPM did u used as
                        Recive Step      Async
                        Synchronous     Send Step
                        Send Step is  Async
       <i><b>    it is possible to use a Async / Sync Brigde.</b></i>
                         No need to use Asyn Sync Step for this
    Assign poins if u found hepful
    Best Regards.,
    V.Rangarajan

  • How to call a webservice proxy from BPM application?

    Hi All,
    Consider a case where I want to use external webservice in my BPM application. What is the best approach to achieve this.
    1) What if I create a web service proxy and wants to use in the BPM app. How can I use this?
    2) Which component do I need to use "Web Service" component or "Third Party Adapter" component from the component pallette?
    3) If I use directly the wsdl in the "Web Service" component will it cause any issues in the future.
    I searched in the net and the docs, but it didnt find the proper solutions for this.
    Please provide your comments on this.
    Thanks.

    First of all a java proxy would not help much here - there is no use for that in SOA suite especially when it comes to using the JCA adapters. Instead reference the WSDL directly in SOA suite but there is a caveat - see my response below
    1) What if I create a web service proxy and wants to use in the BPM app. How can I use this?
    Dont create a WS proxy. Instead reference the WSDL and call it using a Service Task from the BPM process
    2) Which component do I need to use "Web Service" component or "Third Party Adapter" component from the component pallette?
    Use the WSDL directly and select "Web Service" from the component palette
    3) If I use directly the wsdl in the "Web Service" component will it cause any issues in the future.
    Yes there are lots of issues referencing a WSDL directly. Instead upload the WSDL reference to SOA-MDS and then use the oramds:// reference to the WSDL. This will ensure the composite does not break when the WSDL is not available. JDeveloper also goes into a tizzy when the WSDL is not up.
    thanks,
    Vikram

  • BPM Scenario : How to Proceed ?

    hi folks,
    I am working on a BPM scenario .
    Scenario goes like this : I want to pick the data from a file and post the data into SAP using a RFC and get some data in response .now data which came back as a response from RFC response should be written in a XML file whose name should be dynamically generate and then the name of the dynamically generated XML file should go into a table.
    My BPM is like this
    Step 1  : Receive ( For collecting the data from file)
    Step 2 :  Sync Call to RFC ( For making a sync call to RFc and then sending back the resp data)
    Step 3 :  Send Step ( For sending the response data to XML file , name should be dynamically generated)
    Step 4 : Send step ( For sending the dynamic file name of XML file to Table)
    Till step 3 i have worked fine and getting the desired output also ( as i am getting the  dynamic file name in the output xml file) but after that not sure how to proceed...
    how to push the dynamic file name from XML file to Table.
    Now my doubts...
    Is design of my BPM  is right...? if not please correct me...and also if there is any other way to get the same functionality ?
    Regards,

    Hi Latika,
    -->hw r u generating the filename? is it thru a field in ur structure that u are capturing by setting adapter specific attributes in receiver file adapter config?
    Yes
    -->if yes, then use that field only to get the file name. in ur last send step u can use a mapping to trasfer this field into the target structure for oracle database.
    even i also want todo this...but how..this is the question..
    My BPM is like this
    Step 1 : Receive ( For collecting the data from file)
    Step 2 : Sync Call to RFC ( For making a sync call to RFc and then sending back the resp data)
    Step 3 : Send Step ( For sending the response data to XML file , name should be dynamically generated)
    Step 4 : Send step ( For sending the dynamic file name of XML file to Table)
    I step 3 data to file(dynamic file name) is send.
    Now how can i send the data from dynamic file generated just now to JDBC.....?
    Kindly help by step by steps..explanation..
    Regards,

  • BPM Scenario question

    Hi
    i created a bpm scenario according to the blog "RFC Scenario using BPM --Starter Kit" by Arpit Seth. I get the file into XI successfully, but after this first step nothing else happens. In the SXMB_MONI i have only one successful message that read my file.
    How can i debug the reason of this problem?
    thx in advance
    Michael

    i haven't a SXMB_MONI_BPM. But i checked SXMB_MONI again and found 2 error messages from BPM belonging to the resend tests from the PE trace.
    The Response message contains following error:
    <SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: failed to parse BAPI response due to: com.sap.aii.af.rfc.util.bapi.BapiException: Parameter with name RETURN not found.</SAP:AdditionalText>
    <SAP:ApplicationFaultMessage namespace="" />
    Is this a BAPI problem?

  • Sync/Async BPM scenario : Problem at Integration Process..!!

    Hi All,
    I am doing Sync/Async BPM scenario.
    start ->Receive(Request)> Transformation(Responsemap)>Send(SendtoR/3)->Send(Send Response) ---> stop.
    When Iam trying to Activate, Integration process giving errors as
    Source parameter AA_Payment_Req | http://XXXXXXXXX.com/SAP_PI/DirectSales/Payment not set  Target parameter AA_Payment_Response | http://XXXXXXX.com/SAP_PI/DirectSales/Payment not set
    Warning: Container element Response is defined but is neither initialized nor used.
    But I am using them in the BPM. The same kind of scenario is working for another interface which is already running in production. When I tried to check that interface it is showing only Warning message as Container element Response is defined but is neither initialized nor used.
    I tried deleting and creating again and still it is showing the same error.
    Can anyone please suggest what might be the problem.
    Regards
    Deepthi

    Hi,
    could you pls let me know how its solved, while i am trying the same i am also getting the same problem..
    could you pls explain bit more on this.
    Thanks,
    Venkat.

  • SOAP1 - SOAP2 - SOAP3 BPM scenario

    Hi Experts,
    This is continuation of the below thread.
    SOAP -> SOAP -> SOAP BPM scenario
    SOAP1 -> SOAP2 -> SOAP3 BPM scenario
    BPM Steps
    1. Receive Sync Step -> Receive the SOAP1 request inside BPM.
    2. Send Sync Step ->  Send SOAP2 request and get the response
    3. Send sync Step -> Send SOAP3 request and get the response
    4. Send Step -> Send SOAP3 response to SOAP1
    SOAP1 DataType
    1. DT_SOAP1Request
    2. DT_SOAP1Response
    SOAP2 & SOAP3 External Definitions
    1. SOAP2_wsdl (SOAPRequest and Response datatypes)
    2. SOAP3_wsdl (SOAPRequest and Response datatypes)
    Message Type
    1. MT_SOAP2Request
    2. MT_SOAP2Response
    Message Interface
    1. SOAP1_ABS_Request
    2. SOAP2_ABS_Request
    3. SOAP2_ABS_Response
    4. SOAP3_ABS_Request
    5. SOAP3_ABS_Response
    6. SOAP1_ABS_Response
    Doubt: Do we need to create SOAP1 outbound Sync Message interface also?
    Message Mapping (Outside BPM)
    1. MM_SOAP1Request_To_SOAP2Request
    2. MM_SOAP2Response_To_SOAP3Request
    3. MM_SOAP3Response_To_SOAP1Response
    Interface Mapping
    1. IM_SOAP1_To_SOAP2 (SOAP1request to SOAP2Request)
    2. IM_SOAP2_To_SOAP3 (SOAP2response to SOAP3Request)
    3. IM_SOAP3_To_SOAP1 (SOAP3response to SOAP1Response)
    Could you please help me, whether the approach is correct or not?
    Regards
    Sara
    Edited by: Sara D on Jan 18, 2008 12:33 PM
    Edited by: Sara D on Jan 18, 2008 1:02 PM

    Hi Prateek,
    Now I have to use Sync/Async bridge inside BPM know?
    1. Start the BPM process
    2. Receive Step -> To Receive the SOAP1 Request
    Message : SOAP1_Request(SOAP1_ABS_Req_MI)
    Mode : Opens S/A Bridge
    Sync Interface ( SOAP1_Sync_ABS_MI   -  Input Mesage : MT_SOAP1Request and Output Message MT_SOAP1Response)
    3. Send Step -> To send and receive SOAP2 request  and response
    Mode : Sync
    Sync Interface : SOAP2_Sync_ABS_MI   - Input Mesage : MT_SOAP2Request and Output Message MT_SOAP2Response
    Request Message : SOAP2_Request (SOAP2_ABS_Req_MI)
    Response Message : SOAP2_Response (SOAP2_ABS_Res_MI)
    4. Send Step -> To send and receive SOAP3 request  and response
    Mode : Sync
    Sync Interface : SOAP3_Sync_ABS_MI - Input Mesage : MT_SOAP3Request and Output Message MT_SOAP3Response
    Request Message : SOAP3_Request (SOAP3_ABS_Req_MI)
    Response Message : SOAP3_Response (SOAP3_ABS_Res_MI)
    5. Send Step -. To the Sync/Async bridge
    Mode : Closes S/A Bridge
    Message : SOAP1_response (SOAP1_ABS_Res_MI)
    Opend By: Receive1
    6. Send Step : To Send the message back to SOAP1 (Not sure whether this step is required or not)
    Mode : Asyncr
    Message : SOAP1_Response (SOAP1_ABS_Res_MI)
    Is the above approach correct? The above steps I have done it before you provide the new Abstract interface objects..Not sure about the flow..
    Please correct me, If I am wrong..
    SOAP1_Sync_ABS_MI ,SOAP2_Sync_ABS_MI , SOAP2_Sync_ABS_MI   .. Are these Sync Abstract Message interfaces or correct..or I have to use the two MI which you have mentioned it in the thread?
    Please respond to me as early as possible.
    Regards
    Sara

Maybe you are looking for