Synchronous Inbound Proxy: Request Responce Type

Hi,
I am new to ABAP and i have to work on a inbound proxy which is synchronous
ie a request-responce scenario has to be implemented.
Can some one guide me how to initiate.
Regards,
vickey
Any replys will be highly appreciated and rewarded.

hi
check with this wiki page:
https://www.sdn.sap.com/irj/sdn/wiki?path=/display/profile/2007/09/19/request-responseSCENARIOININBOUNDPROXY 
If there is a scenario in which the request coming from the other system and based on that request, a response is to be send from ABAP to that system, inbound proxy with Synchronous method is used.
The class is created by the XI and in the method execute_synchronous, the ABAP code is written.
The XI provides the input and output structures.
The ABAP side receives the request from the input structure and sends back the response to the output structure. We will go through these steps one by one. If clearly understood the whole concept is very easy.
Step1: To declare the internal table/work area of the type of input structure:
        wa_input like input-mt_get_notification-message_payload.
(Here we have given the whole path as highlighted through ovals in the figure above)
Step2:  To move the data coming from the input structure to the defined workarea/internal table:
       move input-mt_get_notification-message_payload to wa_input.
Now the input data is in the desired internal table /work area which can be used to fetch the desired values and send the result back to XI through output structure.
2) To send the data to XI through output structure.
Step1: Like input structure, the naming convention for output structure also follows the
whole path
call method me->get_notif_or_task_details
        exporting
          p_input         = wa_input
        importing
          p_output        =
       output-mt_notification_response-message_payload-sapresponse
        changing
          it_l_bapiret2   = it_bapiret2
        exceptions
          errors_occurred = 1
          others          = 2
      if sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
           WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      endif.
(Code Snippet for Method)
Here this method fetches the required data in the table p_output and assign it to the internal table
SAPRESPONCE of the output structure which goes to XI.
In this way, the synchronous method can be used for inbound proxy in case of request-response scenario.
regards
Manish

Similar Messages

  • Inbound proxy for imported types

    Hello
    I am having sync inbound interface with input message as external definition and output message as message type defined in IR.
    When i attempt to generate proxy, it says "Interface uses external and internal message definitions" and fails to generate proxy.
    can't we use external definitions for generating proxy?
    Thanks in advance.
    Regards
    Rajeev

    hi Rajeev,
    check here....somebody has same problem ...posted same question today....
    Fault Message Type
    biplab

  • Inbound Proxy synchronous implementation

    Hi Experts,
    I am newbie to ABAP proxy implemenation.I have to implement Inbound Synchronous ABAP Proxy. The preface looks like below.
                  (a-> DT_Sender_Req)                   (b-> DT_Receiver_Req)
    .Net App -
    >   SAP PI7.1 -
    >   SAP ECC6.0
                  (<-d DT_Sender_Resp)                  (<-c DT_Receiver_Resp)
    .Net application will send the purchase order and will fetch the PO details from SAP ECC6.0.The response will be send back to .Net application.To implement this , synchronous message is to be configured. I have query regarding the XI scenario configuration. Please guide on the following.
    1. For .Net application, I have to get the message structure i.e. WSDL from the respective team.What all
       details I have to get from .Net team?
    2. Which adapter I can use for message exchange with SAP-PI?
    3. Do I have to create 4 data types(DT)
       (a) : DT_sender_Request
       (b) : DT_Receiver_Request
       (c) : DT_Receiver_Response
       (d) : DT_Sender_Response
       Should message in flow (a) and (b) have the same message structure
    4. For catching the exception in SAP ECC6.0, what would be the Fault Exception structure in (c)?
    Request experts to post the answers making reference to the question numbers i.e. 1,2,3,4 etc
    Regards
    Alice Rebecca

    Alice@xi wrote:
    Hi Experts,
    >
    >
    > I am newbie to ABAP proxy implemenation.I have to implement Inbound Synchronous ABAP Proxy. The preface looks like below.
    >
    >               (a-> DT_Sender_Req)                   (b-> DT_Receiver_Req)
    > .Net App -
    >   SAP PI7.1 -
    >   SAP ECC6.0
    >               (<-d DT_Sender_Resp)                  (<-c DT_Receiver_Resp)
    >
    >
    > .Net application will send the purchase order and will fetch the PO details from SAP ECC6.0.The response will be send back to .Net application.To implement this , synchronous message is to be configured. I have query regarding the XI scenario configuration. Please guide on the following.
    >
    > 1. For .Net application, I have to get the message structure i.e. WSDL from the respective team.What all
    >    details I have to get from .Net team?
    You will need to understand the data structure and thus create a sync. outbound interface and then share the WSDL with them
    >
    > 2. Which adapter I can use for message exchange with SAP-PI?
    >
    This will be a SOAP to Proxy scenario so use the SOAp adapter at the sender side and XI adapter at receiver
    > 3. Do I have to create 4 data types(DT)
    >    (a) : DT_sender_Request
    >    (b) : DT_Receiver_Request
    >    (c) : DT_Receiver_Response
    >    (d) : DT_Sender_Response
    yes 4 DT
    >    Should message in flow (a) and (b) have the same message structure
    Depends. If they are different, you mapping can handle the transformation.
    > 4. For catching the exception in SAP ECC6.0, what would be the Fault Exception structure in (c)?
    >
    > Request experts to post the answers making reference to the question numbers i.e. 1,2,3,4 etc
    >
    > Regards
    > Alice Rebecca
    Yes use fault messages.
    Additional references:
    Walkthrough - SOAP  XI  RFC/BAPI
    Fault messages -
    Fault Message Types - A Demo (Part 1)
    Handling Web Service SOAP Fault Responses in SAP NetWeaver XI

  • Server proxy implementation with synchronous inbound interface

    <b>Hi all,</b>
        How we can implement a server proxy with synchronous inbound interface.If any example weblog please send the link.
    <b>thanks,
    Kishan.</b>

    Hi,
    For sync interface. You have to have a sync MI with both request and response message type.
    when you generate a proxy for the same , you will get a method called execute_synchronous, and import and export parameter.
    You don't have explicitly identify anywhere that the interface is sync.
    Regards
    Vijaya

  • Error handling using fault message type in outbound synchronous ABAP proxy

    Hi,
    We've a scenario, outbound synchronous ABAP proxy to synchronous SOAP receiver. The requirement is to send multiple records in a single rquest and get response for all the records sent (in the same response message).
    Say if I send 10 records from ECC, I should get 10 records as response from SOAP to ECC. But the problem here is, there could be some invalid requests, for which an invalid error status code should be sent as part of response.
    Source Structure
    Req_Proxy
        req (0..unbounded, string)
    Response Structure
    Resp_SOAP
      Resp (0..Unbounded)
           respString (0..1, String) (carries the actaul response message)
          status code (0..1, String) (carries the status of the response, for ex, 001 (successful), 002 (error))
    And now we are planning to make use of Fault Message Type, to track the errors from SOAP (status code 002). But, we are not sure on how to track this for all the requested records. Is it possible to track the errors for all the requested records in a singe call using fault message type? For eg if 8 records are successful and 2 are invalid, then we should get 10 records in response 8 for valid and 2 for invalid accordingly.
    Please calrify.
    Thanks.
    Rohit

    For eg if 8 records are successful and 2 are invalid, then we should get 10 records in response 8
    for valid and 2 for invalid accordingly.
    Check if you can modify the WSDL structure to include an error node that would get populated incase of invalid entries....this would mean that you get the success and failure details in the single message....also at the proxy-end make the necessary change in your DT.....may be then you do not need to use the fault message...
    Regards,
    Abhishek.

  • Inbound Proxy created as Synchronous

    Hello,
    How do I determine the mode (synchronous/asynchronous) when I create a proxy?  I am trying to create an asynchronous inbound proxy and when I hit "generate" in SPROXY I get a synchronous proxy.
    Thanks,
    Matt

    Hi mathew ,
    How do I determine the mode (synchronous/asynchronous) when I create a proxy? I am trying to create an asynchronous inbound proxy and when I hit "generate" in SPROXY I get a synchronous proxy.
    ---> As per the requirement you have to create sync/async interfaces at ESR/IR in XI .Those interfaces only gets reflected in SPROXY at application server. So the type of interface you have created at XI according to that only you get the proxy in application server .
    Regards,

  • [RPC Fault faultString="HTTP/1.1 415 Unsupported Media Type" faultCode="Server.Proxy.Request.Failed"

    Hi,
    Posting in the 'General' forums as well. Did not yet get any response for the topic posted in the 'Configuration and Getting Started Discussion' forum.
    I am having nightmares to call the POST method of a REST service thru Flex. Initially tried with the HTTPService without any proxy server. Wasn't able to call POST, though the GET method was successfully called. Please see the post here (http://www.flexdeveloper.eu/forums/actionscript-3-0/how-to-acces-post-method-of-rest-web -service-thru-flex/)
    b THEN I tried with BlazeDS
    , but with the same results!
    I have set up BlazeDS with the integrated Tomcat option. I have also set up the Flex project as mentioned in the instructions. It is working fine when I run the sample projects.
    But the problem is that
    i when I try to access a
    b POST for a REST service,
    i I get the "HTTP/1.1 415 Unsupported Media Type" fault.
    b The complete fault I'm getting is: [RPC Fault faultString="HTTP/1.1 415 Unsupported Media Type" faultCode="Server.Proxy.Request.Failed" faultDetail="HTTP/1.1 415 Unsupported Media Type"]
    at mx.rpc::AbstractInvoker/http://www.adobe.com/2006/flex/mx/internal::faultHandler()[E:\dev \3.1.0\frameworks\projects\rpc\src\mx\rpc\AbstractInvoker.as:218]
    at mx.rpc::Responder/fault()[E:\dev\3.1.0\frameworks\projects\rpc\src\mx\rpc\Responder.as:53 ]
    at mx.rpc::AsyncRequest/fault()[E:\dev\3.1.0\frameworks\projects\rpc\src\mx\rpc\AsyncRequest .as:103]
    at HTTPMessageResponder/resultHandler()[E:\dev\3.1.0\frameworks\projects\rpc\src\mx\messagin g\channels\HTTPChannel.as:871]
    at HTTPMessageResponder/completeHandler()[E:\dev\3.1.0\frameworks\projects\rpc\src\mx\messag ing\channels\HTTPChannel.as:940]
    at ChannelRequestLoader/callEventCallback()[E:\dev\3.1.0\frameworks\projects\rpc\src\mx\mess aging\channels\HTTPChannel.as:1155]
    at ChannelRequestLoader/completeHandler()[E:\dev\3.1.0\frameworks\projects\rpc\src\mx\messag ing\channels\HTTPChannel.as:1191]
    at flash.events::EventDispatcher/dispatchEventFunction()
    at flash.events::EventDispatcher/dispatchEvent()
    at flash.net::URLLoader/onComplete()
    I have added correct entry to the policy-config.xml (I know this because the GET for the same REST service is working).
    b Only the POST thing is giving me the fault!
    Appreciate any inputs. (am in need of 'em badly)
    thanks
    BJG

    My guess is that the Server/Rest service doesn't like the content type of the request. HTTPService uses a content type of application/x-www-form-urlencoded by default. Maybe the Rest service is expecting the request to be XML? If that's the case, you need to set the contentType property of the HTTPService to application/xml.
    Sometimes an HTTP sniffer/proxy such as Charles can be useful for debugging these kinds of issues. If my suggestion doesn't help, capture the HTTP request and response using a HTTP sniffer like Charles and post back to this thread with it and someone will take a look at it for you. Thanks.
    -Alex

  • Synchronous Inbound ABAP Proxy - Manage status in SXMB_MONI

    Hi Gurus!!
    I have a synchronous SOAP->PI->ABAP Proxy. This ABAP Proxy sends a response to the Sender SOAP with the result of the process execution.
    If the execution finishes with an error (by example, the material to change is locked by another user), the ABAP Proxy sends the response with this error to the SOAP Sender, in the response of the message, without exception. In SXMB_MONI the execution of the message is correct. Is there any way to set the status of the message on SXMB_MONI to other status, and continue sending the corresponding response to the SOAP Sender? If is possible without exception handling?
    Thanks and regards,
    MML001.

    Hope I understood your question. You can send the response (happy flow without exception) and fault message (application or business exception) from the inbound proxy response. But in both cases , SXMB_MONI treats the response message is success. Only in the case of system or connectivity between systems, it shows error message. You could handle even using a specific field in the payload whether the message is successful or not rather than thinking about setting status in monitoring level.

  • Synchronous abap proxy to sysnchronous soap: complex problem

    Hi experts,
    My scenario is synchronous abap proxy to sysnchronous soap. for proxy I am using business system name as ERDCLNT220 and soap business system name as BS_HRS_DEV
    client proxy to soap(request) i have configured. But when I am doing the configuration for soap to server proxy(response) I am not able to get the message interface name in the configuration.
    Note: In the soap BS_HRS_DEV business system receiver only we will get the message interface.
    but we cannot get sender side in the same business system BS_HRS_DEV find message interface. as we are aware as a synchronous scenario both side we have to get the message interface(sender and receiver BS_HRS_DEV).
    2. what are the configuration steps  i have to do for response message
    Kindly help me.
    advance thanks
    thanks and regards
    elton

    Hello,
    client proxy to soap(request) i have configured. But when I am doing the configuration for soap to server proxy(response) I am not able to get the message interface name in the configuration.
    In a synch scenario, you only need to configure it like it is an asynch scenario. The only exception is that the service interfaces are synchronous. Each synch service interface requires at least two messages (request and response), fault message is optional. So for your scenario, at least four messages are required
    1.) 1st message (Outbound request) -> Proxy message type request that will be entering PI
    2.) 2nd message (Inbound request) -> Soap request message type going to the webservice
    3.) 3rd message (Inbound response) -> Soap response message type from webservice going to PI
    4.) 4th message (Outbound response) -> contains the message type that has the values that you want
    So the flow could be like this (fault messages not shown)
    Outbound SI (1) -> PI -> Inbound SI (2)
                (4) <- PI <-            (3)
    what are the configuration steps i have to do for response message
    No additional steps in ID. Just make sure you handle the mapping of response message in ESR (if you have one)
    Hope this helps,
    Mark
    Edited by: Mark Dihiansan on May 3, 2011 10:01 AM

  • Error in synchronous( abap proxy to soap)scenario

    Hi experts,
    My scenario is synchronous abap proxy to sysnchronous soap. for proxy I am using business system name as ERDCLNT220 and soap business system name as BS_HRS_DEV
    configuration steps are
    1. only client proxy to soap scenario I have done.
    communication channels: only receiver soap adapter. no proxy sender communication channel for client proxy.
    Already we have RFC destination connection and connection type H for proxy to xi.
    1.Is it required RFC destination connection for xi to server proxy.
    2.Is it required receiver proxy communication channel for server proxy?.
    i HAVE TESTED THIS INTERFACE. I am able to send the request. But I am not able to receive the response from soap webservice message .
    error is:
    SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Exception occurred while trying to invoke service method getPerson
    exception caught with cause com.sap.engine.interfaces.messaging.api.exception.MessagingException: SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Exception occurred while trying to invoke service method getPerson
    Error Adapter Framework caught exception: SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Exception occurred while trying to invoke service method getPerson
    Error Delivering the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException: SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: Exception occurred while trying to invoke service method getPerson. Setting message to status failed.
    Kindly help me.
    advance thanks
    thanks and regards
    elton
    Edited by: eltonsaranya on May 9, 2011 10:27 AM

    Your exception message shows problem at the webservice side.
    Check the following:
    a) you need two mappings one for proxy req to soap request and other soap response to proxy response
    b) You need to create service interfaces both sender and receiver synchronous .
    c) communication channel  QOS is best effort for both sender and receiver
    d) I dont see problem in soap configuration. Bcuz you are able to ping and while getting response from the method getPerson it fails.
    f) See your SOAP response structure matches with WSDL provided.
    g) You can also test outside PI.. I meant testing via soap client tool like SOAPUI  for that web service. So that you know whether problem exists on the target system or not.
    Hope that helps.

  • Exception handling in synchronous client proxy

    Hi, I have a synchronous outbound proxy-web service scenario. If our Post request (unknown data in the receiver) fails, the receiver system returns a 404 error that results in application error in PI. Now, I want know how to handle CX_AI_APPLICATION_FAULT using the standard fault message type (ExchangeFaultData). I couldn't find any reference for synchronous client proxies using this. I hope you can help me out. Thank you.

    Hi Mark,
    You have a link here How to handle CX_AI_SYSTEM_FAULT in RFC - Code Gallery - SCN Wiki or here https://help.sap.com/saphelp_nw04/helpdata/en/75/a55c3cff8ca92be10000000a114084/content.htm
    I dont know what is your exact problem, you can retrieve certain information in the ABAP code but i usually set a generic message like "Connection unsuccessful" because if you debbug the object the information is so technical to be showed to a client.
    Hope this helps.
    Regards.

  • Generated Class is not called by Inbound Proxy

    Uploading data to Ztable of ECC by using inbound proxy.
    The messages are tranfered to SAP ECC from SAP XI.
    Monitoring in SXMB_MONI in SAP XI DEV can see Success flag
    Monitoring in SXMB_MONI in SAP ECC can see inbound message stored in QUEUES only.
    I configured the Application Integration Engine as per the help document.
    In Reciever XI Adapter set the addressing type URL.
    Coding is correct in the method of the generated class.
    Let me know if any configurations yet to be done.
    Let me know how to proceed furthur.
    ThankYou in Advance.

    hi
    Go to SMQR of the ECC and register and activate the queues again.
    Also ensure that u are implementing the correct methods of the proxy
    EXECUTE-SYNCHRONOUS / EXECUTE-ASYNCHRONOUS
    rgds
    Arun

  • Alert in synchronous SOAP- PROXY scenario

    Hi,
    I am woking on a synchronous  SOAP- PROXY scenario. The XI outbound interface has been exposed as web service which is invoked  by .NET application to send the request. The inbound interface is ABAP proxy which is retrieving the data from R3 tables based on the selection criteria in request and sending back the same as response. Now it is required to send an alert to the specified recipient in case there is any application error on the receiver side.
    Please help.

    Now it is required to send an alert to the specified recipient in case there is any application error on the receiver side.
    Check this thread on similar topic....see my reply: Re: raising sap alert in case of "Application Error"
    Regards,
    Abhishek.

  • Problem with errorPage in page directive tag while proxying request from iPlanet to WebLogic

              Hi,
              We are using iPlanet 4.0 as the webserver and WebLogic 5.1 as the application server on different solaris machines. We have put our JSPs in the weblogic application server and proxy the requests from iplanet to weblogic.
              We are facing a problem with the errorPage in the 'Page Directive' tag of the JSP. We have given xxx.jsp as an 'errorpage' parameter in the page directive tag. If we directly access the JSP from the WebLogic, and there is an system error, the error page specified in the JSP is getting displayed. But if we access the JSP from iPlanet and there is an system error, instead of displaying the error page, iPlanet is asking whether we want to download the file. If we say yes it downloads the actual JSP code itself. We have defined the mime types in obj.conf file as well as mime.types for the iPlanet.
              If anyone knows how this can be solved, it would be of great help
              Regards,
              Krish
              

    How did you configure the obj.conf file? proxy by mime type or ppath? It
              seems errorPage.jsp was not proxyed and treated as a unknown mime type.
              Krishnaraja <[email protected]> wrote in message
              news:3a372d79$[email protected]..
              >
              > Hi,
              >
              > We are using iPlanet 4.0 as the webserver and WebLogic 5.1 as the
              application server on different solaris machines. We have put our JSPs in
              the weblogic application server and proxy the requests from iplanet to
              weblogic.
              >
              > We are facing a problem with the errorPage in the 'Page Directive' tag of
              the JSP. We have given xxx.jsp as an 'errorpage' parameter in the page
              directive tag. If we directly access the JSP from the WebLogic, and there is
              an system error, the error page specified in the JSP is getting displayed.
              But if we access the JSP from iPlanet and there is an system error, instead
              of displaying the error page, iPlanet is asking whether we want to download
              the file. If we say yes it downloads the actual JSP code itself. We have
              defined the mime types in obj.conf file as well as mime.types for the
              iPlanet.
              >
              > If anyone knows how this can be solved, it would be of great help
              >
              > Regards,
              > Krish
              

  • Issue while inserting a BDC program in Inbound Proxy.JDBC-- PI-- SAP.

    The scenerio is jdbcsender-sappi-inboundproxy(ECC6.0).
    The issue is related to SAP Plant Maintenance Module where  We have a requirement for creating Maintenance item
    programmatically from (SQLDatabase)Legacy Data for one of the interface.
    since there are no standard BAPIS/Idocs or function modules available from SAP side for creating the maintenance item. So I
    have written BDC program and with the help of submit statement in inbound proxy program, I am calling BDC program for
    creation of the maintenance item.
    When I tested the program independently on proxy side  the Maintenance Item is getting created successfully but when I
    executed from end-to-end ie.  SQLDATABASE->SAP PI-->SAP. The message is getting strucked into the queue and queue  got stopped on SAP.
    ECC side and the status of the message is scheduled state  on SXMB_MONI  transaction of SAP ECC.
    As the message  is in scheduled state multiple number of Maintenance Items are getting created with the same values.
    Has any one of our SAP friends, encountered this type of issue while inserting a BDC program in inbound proxy, please help 
    in fixing this issue. FYI... I am using sap pi7.0 with service pack 24 and ecc6.0
    Waiting for your kind expert guidance...
    cheers,
    Ram

    Raj,
    Thanks for the reply. I have tried registering the queues but still the same problem. the message got stuck in the queue of ECC and showing below message in queue.
    function module                                    StatusText
    SXMS_ASYNC_EXEC                  connection closed (no data)
    I have checked in the forums especially  for this issue but no one has provided the answer for this.
    Thanks and Regards
    Ram

Maybe you are looking for

  • [solved] Non-root program to create subdir in /run/lock

    Hi all, I am using and maintaining (more or less) the program logcheck. When the program is run (e.g. by a cronjob) and the directory /var/run/logcheck is not already present, it creates it. Since the recent update of the filesystem package, the lock

  • AI CS6 (16.0.4) Symbols lose transformations upon reopening file - But only visually

    Mac / AI 16.0.4 I've created a series of images utilizing symbols. Basically the images are of a box. Each side of the box has different content. I create the side content flat with an encompassing rectangle. Drag all this to the Symbol Panel to crea

  • Dynamic Header - 2012 SP2

    Hello! Before I start with my question, I'd to say that I've spent a whole day testing out different answers on the internet, most of them here in msdn and some others from Stackoverflow. Almost all say the same, and nothing worked. So please, if you

  • Create a customize connector

    In my env I need to create a customize connector for OIM, after I create it I put it into Xellerate fold, but when I add it into the adapter factory the OIM design console popup an error message "Server could not load class", and I check it on the Jb

  • ITunes 11.1.3 error

    I've tried to update to 11.1.3 and I got an error message saying "Errors occurred while installing updates. If the problems persist choose Tools > Download Only", so I just decided to wait for the next update. However, when I tried opening iTunes, I