About HTTP sync scenario

Hi all
It could be a silly question but as we do not use sender agreement in HTTP sender then how do the external system who wants to communicate synch. with XI-PI system know which interface to use .
and how can we tell XI that this specific http request has to go to RFC or PROXY for exmaple.
best regards.

The plain HTTP adapter enables you to receive and send business data from and to external systems, using the plain HTTP inbound/outbound channels of the Integration Engine.
The standard exchange format for data in the Integration Engine is XML. However, using the plain HTTP adapter you can also send and receive data in HTML and ASCII. In this case you must use a Java mapping.
Prerequisites
The HTTP service /sap/xi/adapter_plain supplied by SAP must be assigned to the client in which you run the Integration Engine.
Process Flow
An HTTP client sends business documents to the Integration Engine using HTTP. A message is generated from the business document and transferred to the Integration Engine. If, on the other hand, the Integration Engine identifies a plain HTTP receiver, a business document is generated from the message and sent to the receiver. This communication is either synchronous (the client awaits a response to its HTTP request) or asynchronous.
Integration Engine: HTTP Inbound Channel
The Integration Engine is called by external systems using HTTP and an HTTP address. For this purpose, the HTTP inbound channel of the Integration Engine contains the HTTP service /sap/xi/adapter_plain, delivered by SAP.
The class CL_HTTP_PLAIN_INBOUND is provided as a request handler that processes an HTTP request synchronously (client awaits a response) or asynchronously.
Multi-part documents and HTTP requests with an empty HTTP body are not accepted and receive a response with status code 500 or 204.
The obligatory parameters of the HTTP address are analyzed and used to construct the message.
Mandatory Parameters
Parameter
Meaning
service
Sender service for identifying the sender
In XI message protocol 2.0, this parameter corresponds to the parameter bs.
namespace
Namespace of the sender interface
interface
Interface of the HTTP payload
http://sap-ag.com:8088/sap/xi/adapter_plain?service=sender&namespace=urn%3Asap-ag%2Ecom&interface=%2Fsap%2Forders
You must code special characters such as forward slash (/), hyphen , period (.), or colon ( with escape characters (for example, %2F for /, %2D for -, %2E for .,and %3A for :).
The optional parameters of the HTTP address are also analyzed. They affect the runtime response of the message in the Integration Engine.
Optional Parameters
Parameter
Meaning
party
Sender party (XI 3.0 only)
agency
Issuing agency of the sender (XI 3.0 only)
scheme
Identification scheme of the sender (XI 3.0 only)
qos
Quality of service of the message:
Synchronous (BE) or asynchronous (EO, EOIO) processing; the default setting is synchronous processing.
queueid
Queue name in EOIO processing (XI 3.0 only)
msgguid
32 character message ID; uniquely identifies a message in the Integration Engine. If no message ID is specified, the system generates one internally.
http://sap-ag.com:8088/sap/xi/adapter_plain?service=sender&namespace=urn%3Asap-ag%2Ecom&interface=%2Fsap%2Forders&qos=EO&msgguid=3C61F6C12F1E2DD1E10000000A1145AB
You must code special characters such as forward slash (/), hyphen , period (.), or colon ( with escape characters (for example, %2F for /, %2D for -, %2E for .,and %3A for :).
Optional HTTP header fields are ignored. The payload in the HTTP body is appended to the message as a binary document. The payload must be sent as an XML document with code page UTF-8, so that all services of the Exchange Infrastructure can process the document.
The instantiated message is transferred to the Integration Engine. In mode BE (synchronous processing) the system waits for the response from the Integration Engine. If processing is successful, the payload of the message is sent as an HTTP response. If not, the system returns an error.
If processing is successful, the HTTP client has the return code 200. Otherwise, it has the return code 500, or 409. If an error occurs, the error object of the message contains an error message. In the synchronous case, this is placed in the HTTP body of the HTTP response; in the asynchronous case, it is given as the error cause to the HTTP request.
HTTP Outbound Channel of the Integration Engine (Receiver HTTP Adapter)
The Integration Engine calls the plain HTTP adapter if technical routing identifies a communication channel for the logical receiver. This communication channel originates from the Integration Directory. It is analyzed and provides the technical information for the HTTP request.
The main payload of the message is sent as HTTP post to an HTTP address. The technical data for the HTTP post is determined from the communication channel parameters.
A HTTP client is instantiated for a logical destination, in which the following data are maintained:
·        HTTP address
·        HTTP proxy data
·        Authentication settings
·        Security data
If no destination is specified, the system instantiates an HTTP client using the specified HTTP address and the proxy data. A basic authentication is entered in the HTTP header fields with a user and password in BASE64 code.
The optional header fields maintained in the communication channel parameters are set in the HTTP header.
The header fields Content Type (if not already explicitly set), Content Length, and the host are set by default.
In the HTTP address, the sender party is set as the parameters party, agency, and scheme, the sender service is set as the parameter service, and the interface used is set as the parameters namespace and interface. Depending on the current quality of service (qos) of the message, the parameter qos is also added to the HTTP address. If the quality of service is EOIO, a queue name is also required in the parameter queueid.
The HTTP body comprises the prolog, message payload, and epilog. The prolog and epilog are optional and enhance the payload for particular servers (for example, CGI servers). If the payload is to be sent as an HTML form using HTTP post, it is URL-escaped beforehand.
If the specified code page for the HTTP body does not correspond to the default setting UTF 8, the system converts the HTTP body to the corresponding code page; in the XML document, the system replaces the tag encoding=UTF-8 with the corresponding code page tag.
If the quality of service is set to Best Effort, the system awaits a response from the HTTP server. The system appends this response to the message as a new main payload (with the content type, if necessary), while it deletes the old main payload.
The system logs any errors that occur in the message.

Similar Messages

  • Http to jdbc sync scenario needed

    hi all,
         Can any one give me certain example of http to jdbc sync scenario
    Thanks in advance.

    Hi,
    Refer this link.
    For JDBC receiver side settings
    http://help.sap.com/saphelp_nw2004s/helpdata/en/cf/406642ea59c753e10000000a1550b0/content.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/64/ce4e886334ec4ea7c2712e11cc567c/content.htm
    JDBC Receiver Adapter -- Synchronous Select – Step by Step
    For HTTP
    http://help.sap.com/saphelp_nw2004s/helpdata/en/44/79973cc73af456e10000000a114084/content.htm
    http://help.sap.com/saphelp_nw2004s/helpdata/en/b1/f29e7a56e18a439984a3c6630951d2/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/14/ef2940cbf2195de10000000a1550b0/content.htm
    JDBC Receiver Adapter -- Synchronous Select – Step by Step
    HTTP Queue
    error in HTTP to file scenario
    Regards,
    Sharanya.
    Edited by: sharanya devaraj on Aug 5, 2008 8:09 AM

  • ABAP proxy to HTTP sycnchronous scenario.

    Hi All,
    I have an ABAP proxy to HTTP syncronous scenario in which the proxy through PI makes an HTTP request to a third party to download a PDF.Once the PDF is sucessfully downloaded we need to send an acknowledgement to ECC system that the download was sucessful and also place the PFD file in an FTP server as well.
    Looking forward for any possible ways that the above scenario could be achived in once interface.We are open to use ccBPM to achive this.
    Thanks in advance.
    Best Regards,
    Bhanu.

    Hi Bhanu,
    if this is a sync request to a HTTP receiver (to initiate with the request a PDF upload) you will expect to get a response back to the Proxy sender.
    So following the described implementation the response will provide the information about un/successfull PDF load
    from the http receiver (so this partner has to provide a response in a sync connect!!!).
    If you need the PDF to be moved back to a location near to the proxy sender additionally to the response message the receiver of the proxy trigger has to return both in the sync response but the proxy is not able to receive an attachment.
    And... as I know HTTP adapter does not allow to handle attachment. This is only possible with SOAP !
    So in such a case the PDF needs to be provided with another adapter (which would allow to use a sync connect Proxy-> HTTP and another one async from the PDF loader via file adapter (file -> file). So this will not require a BPM too!
    a) Proxy-> PI -> HTTP (sync)
    b) FTP -> PI  -> FTP (async)
    Result: No BPM required!
    Regards
    Dirk

  • How to implement Sync-Sync scenario in BPM? Please help!

    Hi Experts,
       I have a Sync-Sync scenario (SOAP - RFC) where both sender as well as receiver are synchronous.
       I have created outbound sender sync interface, abstract sender sync interface, Receiver abstract sync interface and Receiver inbound sync interface.
      In BPM I have started with Receive step.
      But in receive step I can give either Async Abstract interface or Open Sync-Async bridge. I am confused!
      How to implement my scenario in BPM?
      It will be really great if somebody can send me the step by step info or doc.
    Thanks & Regards,
    Gopal

    Hi,
    Refer this link
    use synchronous send step in your BPM - http://help.sap.com/saphelp_nw04/helpdata/en/43/6211331c895f6ce10000000a1553f6/content.htm
    RFC Scenario using BPM --Starter Kit
    http://help.sap.com/saphelp_nw04/helpdata/en/83/d2a84028c9e469e10000000a1550b0/content.htm
    RFC -> XI -> WebService - A Complete Walkthrough (Part 1)
    RFC -> XI -> WebService - A Complete Walkthrough (Part 2)
    regards
    Aashish Sinha
    PS : reward points if helpful

  • Message-Split in a Sync Scenario

    Hello Experts.
    As i am quite new to Pi, i have some problems with an integration scenario we are about to implement. As i am not really into the topic, i do'nt even know, if the prefered solution can be implemented in PI or if our current approach is nonsense after all.
    The currently preferred solution would look like this:
    1.) The sender system collects the data and sends one message using a synchronous webservice call
    2.) PI splits the message into n parts (one outgoing message per receiving system), sends the message-parts synchronously to the receiving systems, collects the response messages into one big message and sends this message as the response message for the webservice-call, the sender system made.
    3.) The sender system receives the response message and updates the database.
    The problem is, that i have no clue how to do a message-split in a Sync scenario. I already experimented with a message-split in Async scenarios and everything worked fine, but i have no idea, how to do the trick in a Sync scenario.
    As the incoming message represents a table (only one kind of element; occurence 0...unbounded), i would have to do the following:
    1.) Split the incoming message line by line (or childnode by childenode)
    2.) Collect the lines for the single receiver systems (each receiver should get only one message)
    3.) Send the messages
    4.) receive the results
    5.) Join the results into one response message / Handle timeouts, if a receiver could not be reached in time
    6.) Send the response message to the sender system
    When experimenting with the async scenario, i used BPM to split the message into parts, but an integration process seems to need asynchronous abstract interfaces. At least PI did not accept my synchronous message-Interface and even if it would do so, i would have no idea how to send the message parts synchronously and how to join the results.
    Of course we could also send one record per message - in this case everything would be easy and clear, but unfortunatelly this is not the preferred solution, but the "Plan B"...
    Does anybody know how to do what we want? Any suggestions would be highly appreciated.
    And by the way: We are using PI 7.0.
    Regards, Jörg

    Thanks for your reply.
    I was already afraid, that the preferred approach could be a dead end. If the described scenario is impossible to implement, i could immagine two alternative solutions:
    1.) Our "Plan B":
    -> Single records
    -> One record per message
    -> Synchronous communication
    PI would only have to do a quite stupid routing based on a certain field in the message.
    2.) Something totally different:
    -> Asynchronous communication
    -> The sender still send the data for n receivers in one message
    -> PI splits the message and sends the n parts to n receivers
    -> The receiver sends a response after processing the data
    -> PI simply forwards this message to the sender
    I think scenario #2 could have a better performance, as the total number of messages is limited to the necessary minimum, but as i'm not experienced in PI, i'm not actually sure about this.
    Any recommendations?
    regards, Jörg

  • Xml validation in File to RFC Sync Scenario with Validation fails message

    Hi All,
    We are using PI 7.4 (Dual Stack) the Requirement is File to RFC Sync Scenario(File <---> RFC).and need to do XML validation against XSD Schema. if any Validations fails Response message should send back to sender.RequestResponseBean standard module is using for File to RFC Sync scenario but how to send the response message to sender if any validation fails. adapter level XML validation is not helpful for this requirement. please help out me how to achieve the requirement with graphical mapping.
    Thanks in advance.

    to validate schema you cannot solve it with graphical mapping but validating the schema in the AAE or the integration engine.
    y recomend you to use the AAE validation at sender side, coz the sender system will be notified in case of schema errors.
    The response will be validated at Integration Server level.
    you can search in the forum, you will get many document about how to configure it.
    take a look to my blog: PI 7.3  - XML Validation

  • Sending Request Mapping errors back to a consumer for a sync scenario

    Hello Experts,
    I have a sync scenario (JAVA Application <-> PI <-> CRM (service)) where i want to send back any mapping exception that occurs in PI on the request side of the call, back to the consumer.
    I also want to communicated back to the consumer, if there are any connection failures between PI and CRM.
    I have implemented Fault Mapping in my scenario. Will this take care of any connection failures between PI and CRM also? 
    Your suggestions are highly appreciated.
    Warm Regards,
    Anshul

    Hello,
    I have a sync scenario (JAVA Application <-> PI <-> CRM (service)) where i want to send back any mapping exception that occurs in PI on the request side of the call, back to the consumer.
    You can use the XI alerting framework for that, here are some references:
    http://help.sap.com/saphelp_nw04/helpdata/en/3f/81023cfa699508e10000000a11402f/content.htm
    XI: Alerts - Step by step (Step-by-Step blog by Michal)
    I have implemented Fault Mapping in my scenario. Will this take care of any connection failures between PI and CRM also?
    Fault Mapping is for application errors only, it will not handle system errors.
    Hope this helps,
    Mark

  • BPM  HTTP Sync - IDOC Async Timeout

    Hi!!!
    my scenary is using a BPM
             HTTP sync <--> BPM -> IDOC
    my IP
    receiver            sender1             transforme              sender2
    SI_ABS_SYNC         SI_ABS_REQ          OM_ABS_REQ_to_ABS_RES   SI_ABS_RES
    SI_ABS_REQ                              SI_ABS_REQ              Close S/A Bridge
    Open S/A Bridge                         SI_ABS_RES
                                            Create New Transaction
    HTTP                IDOC                Mapping                 HTTP_Response
    ->                  ->                  ->                      <-
    ->                                                              <-
    the steps the BPM pass
    receiver -ok
    sender1 -ok
    tranformer -ok
    sernder2 - mistake
    could you help me, what i need to move or configurate to return the response message
    the tranformer is a Mapping with return a ID that it is in the request message, i simple sent to return
    Levy Gonzalez

    Hi Levy,
    this forum is about SAP NW BPM, not PI ccBPM. Please post your question in the PI forums, I´m sure there are people that can help you.
    Best regards,
    Matthias

  • Hi, In  a IDOC --- XI(BPM)--- SOAP Sync Scenario failrure.

    Hi, In  an IDOC ->XI(BPM)->SOAP Sync Scenario I observed recently messages are failing in SXMB_MONI with an error as:
    com.sap.aii.af.ra.ms.api.DeliveryException: SOAP: response message contains an error XIAdapter/PARSING/ADAPTER.SOAP_EXCEPTION - soap fault: System.Web.Services.Protocols.SoapException: Server did not recognize the value of HTTP Header SOAPAction: http://172.16.209.162/esdryrun/ContractData_Push. at System.Web.Services.Protocols.Soap11ServerProtocolHelper.RouteRequest() at System.Web.Services.Protocols.SoapServerProtocol.Initialize() at System.Web.Services.Protocols.ServerProtocol.SetContext(Type type, HttpContext context, HttpRequest request, HttpResponse response) at System.Web.Services.Protocols.ServerProtocolFactory.Create(Type type, HttpContext context, HttpRequest request, HttpResponse response, Boolean& abortProcessing)
    friends, could  u plz help on this.
    Thanks,
    satya.

    Hello,
    This indicates a configuration issue with this SOAP receiver adapter. Please check the on line help for the configuration of the SOAP adapter (the link is below). Please set the indicator in the "SOAP Action" field.
    Configuring the Receiver SOAP Adapter
    http://help.sap.com/saphelp_nw70/helpdata/EN/29/5bd93f130f9215e10000000a155106/frameset.htm
    (Below is the extract from the link)
    SOAP Action
    Specify the SOAP action. The action specifies the value for the
    SOAPAction in Web service messages; set the indicator.
    Regards,
    Sarah

  • Dynamic receiver Determination for Sync Scenario??

    Hello Experts,
      I have a SOAP -> Xi -> R3 sync scenario i,e, R3 to send back response to SOAP client.
    Also I need the Dynamic receiver determination.
    When I try to create the Interface Mapping, I get the error:
    "Interface modi are different. "
    Source interface MI_My_sync_iface is synchronous.
    Target interface  ReceiverDetermination | http://sap.com/xi/XI/System is asynchronous
    I coud find few threads on forum related to this but i think there is no clear solution provided.
    I do not wanna use BPM.
    Please suggest.
    Thanks in Advance!
    Appropriate point will be awarded.

    > So when I try to define a interface Mapping using a Sync interface as Source and Async interface as target, XI does not allow me to do so.
    You are getting this error because in Interface mapping when you use sync source then it generates request and response tab so if at target side if you put anync interface then definetly it will go into error. You have to make both the interfaces as sync.
    BTW, after getting the message in R3, how are processing the message? Are you using sync proxy??
    You can solve the problem by creating one additional message interface of type inbound-asyn. Use this additional Message interfce in your Interface Determination. And create additional Receiver Agreement to deliver the message to it's destination.
    Note: When you careate additional Interface Determination then you have to chose the response message interface (Sync message interface which returns the response from R3) as a source.
    Regards,
    Sarvesh

  • (SOAP sender) --- XI ---- R/3 (RFC receiver) this sync scenario

    Hi Experts,
    Webservice(SOAP sender) < - > XI <--> R/3 (RFC receiver) this sync scenario tested with Infopath successfully.
    I have given partner number,student object id are the two input fields(request) and i am getting student number as response. This scenario is working when i use MS infopath.
    I have generated WSDL file embedded with below URL
    http://xxxx.yyytec.passh.ed:7271/XISOAPAdapter/MessageServlet?channel=:Webservice_Sender_BS:GET_NUMBERS_Sender_CC&version=3.0;amp;Sender.Service=Webservice_Sender_BS;amp;Interface=urn%Apache
    Sender business system: Webservice_Sender_BS
    Sender CC: GET_NUMBERS_Sender_CC
    Msg Interface: STU_GET_NUMBERS_Synch_MI
    now we want to test from third party website, what are the things to be provided to the website developer to test the scenario.
    the way i generated URL, is it correct?
    if i provide above URL and generated WSDL in XI , is it enough for web developer to enter the input fields to RFC(r/3) via XI as webservice request and getting back response from RFC(r/3) to webservice via XI.
    can you please advice if any body worked on this kind of scenario.
    Thanks
    Dhanush.

    For the developer you have to provide WSDL file so that they know the input/output fields and write the code.
    URL is correct.
    Other informatino they required is Username and password of you PI system.
    Gaurav Jain
    Points if answer is helpful

  • Can you explain steps in the Async and Sync scenarios JDBC to RFC.

    Hi,
    Can you explain some basic steps in the Async and Sync scenarios for sending data from JDBC to RFC.
    Like,
    The data is picked up from the  database table through JDBC adapter.
    It is passed on to SAP  by calling the RFC. RFC gets executed         
    successfully. The status is returned by the RFC. The status needs to be
    updated back into the SQL database table.
    Is this a sync case or async case.
    What si the diffrences in the sync and async scenarios in the above JDBC to RFC scenarios.
    Soorya

    hi check the below link
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/5474f19e-0701-0010-4eaa-97c4f78dbf9b
    JDBC Synchronous call using BPM  
    Data Types -
    1) File Input
    2) JDBC Req
    3) JDBC Response
    4) File Response of similar type of JDBC Response.. ( This you can avoid also..let it be for first time)
    Message Types
    4 for each data type
    Message Interfaces
    1) Async, Outbound, Interface, to receieve the file
    2) Async, Inbound , Interface to send the file from XI
    3) Async, Absract , Interface of type File message type to recieve the message in the BPM
    4) Sync, Abstract Interface with Req message type as File Request, and Response Message type as a file Response
    5) Sync , Inbound interface for JDBC with Input message type as a JDBC Request and Output Message type as a JDBC Response
    Message Mapping:
    1)Mapping between File Req to the JDBC req
    2) JDBC Response to File Response
    Interface mapping:
    1) Sender Interface as a Sync,Abstract Interface created for the file type and target interface as Synchrnous JDBC interface.
    Use corresponding mapping for Req and Resp..
    note:reward points if solution found helpfull.....
    regards
    chandrakanth.k

  • Fiel to RFC sync Scenario

    Hi Experts,
    My Scenario: EDI to RFC Synchronous scenario.(Order Status Inquiry interface-- 869/870)
    Guys could you suggest whether do i need to use BPM to achieve the output file.
    1. we have EDI struture imported from stylus studio and used two mappings as follows
    Mesage Mappings:
    EDI input request xml file (869 EDI xml File) -
    RFC request structure
    RFC response Structure -
    EDI output xml file (870 EDI XML file)
    Interface Mappings:
    one interface mapping
    My doubt was i have seen some scenarios in SDN that we can achieve sync scenarios without using BPM with the help of module configurations in the file
    adapter.
    Else do we need to go for the BPM to achieve such scenarios.
    Thanks,
    --Sai.

    Such scenarios can be easily achieved using standard SAP module Request Response bean (without using BPM)
    Chk this:
    http://wiki.sdn.sap.com/wiki/display/XI/File-RFC-File%28Without%20BPM%29
    http://wiki.sdn.sap.com/wiki/display/XI/UsingRequestResponseBeanModuleinFILE+Adapter
    Thanks
    Amit

  • 7610 user about to Sync for 1st time in 2.2: Q?

    Just about to sync a 7610 for the 1st time. Now, I have been using iCal, no a huge deal @ all. But in the Add Book I had a few Q?s.
    Someone one the boards mentioned to *Erase Data* when syncing, and not Merge. I have a few very insignificant entries in my Add Book right now, but they were there for iChat purposes.
    I simply want to start using the Add Book as a way to start to back things up, and try to get a touch more organized, now that 2.2 is out and supports more units.
    My 7610's contacts are like a small plate of spaghetti right now, and the AddBook will help me orgazine it.
    Anyhow, any wisdom is welcomed.
    Thanks.
    H!

    Man.
    forget it.
    May have found my answer - for anyone looking:
    http://docs.info.apple.com/article.html?artnum=303419
    I will merge on 1st sync.
    H!

  • Can't see messages on sxi_monitor for sync scenario?

    Hi gurus,
    We are using PI 7.11. We found after no operation for ESR or ID for a long time, the system pops up the error "no authorization...", then we have to click esr on pi main page and logon again. Is there any parameter to change the user session or somthing?
    Thanks in advance.

    your subject line seems different to the issue you are having...
    or they could be the same!  have you set the messaging logging for sync scenarios in SXMB_ADM?
    can you explain the actual problem you are having?  it makes no sense.

Maybe you are looking for

  • Cannot add another device as Account Owner

    I am trying to add another device to add my boyfriend onto my plan. Whenever I try to do this, I get a screen telling me that it is not authorized because I am not an Account Manager. However, on my My Verizon page it says that I am an Account Owner,

  • Itunes creating copies of my music!!! HELP!!

    i accidently deleted my itunes and music off my ipod, and ever since then, when ever i drag and drop music in there, it adds the new music fine, but if there is already the same song on there it will create a copy not duplicate of it/___sbsstatic___/

  • How to export midi file wih song tempo alternative ?

    can I export Midi File that including song tempo alternative in it? Please Tall Me How to do that Thanks

  • The volume buttons dont work after installing mountain lion

    Yesterday I installed Mountain lion. Now the volume buttons don´t work. When I press them the volume don´t change. I tried to change in the system settings, but all selections there can be made.

  • Freeing memory for Internal Frames when they are closed

    Does anyone have any advice for a way to completely free all references to InternalFrames and their contents when they are closed? It appears that many references to the frame are held deep within Swing. Our application hold references to large memor