HTTPS Receiver Adapter with POST and query String

Hi there,
we are currently running a http connection with an external partner. We use the plain http adapter to send documents.
Now we want to secure the whole thing and switch to https.
Currently we solely use the comm. channel in the directory. In the URL we include the required query string (http:/xxx/yyy<b>?msgtype=order</b>)
As I understand, the only way to use httpS is to use a RFC Dest. Type G in sm59.
But I am not able to add a query to the url there.
I guess that it is not an option to ask our partner to search the posted document for parameters. We were already happy that they were able to do it like we have it.
Does anyone has an idea how we could include a query in the url or give somehow the partner explicitly the info about the message type we send?
Thanks in advance,
Helge

Hi Helge,
as far as I know this should be possible with SP16 by using the settings in the adapter configuration.
We had this requirement, but with SP15 it isn´t possible.
Have a look on the documentation
http://help.sap.com/saphelp_nw04/helpdata/en/14/80243b4a66ae0ce10000000a11402f/frameset.htm
Chapter Adapter-Specific Message Attributes
There you can use up to 6 URL Parameters. I never used it, if you have SP16, try it.
Regards
Thomas

Similar Messages

  • HTTP Receiver adapter with post

    Hello,
    I have following scenario.
    XI (http receiver adapater) -
    > 3rd party web based application.
    The 3rd party application expects XI payload to be part of URL with POST Method.
    When HTTP receiver adapter sends request to 3rd party application, the URL looks like as follows.
    http://myserver:6789/myapplication/name1=value1&name2=value2&.....&name27=value27
    I looked at HTTP receiver adpater document on SDN. I see some attributes such as headerfiled1, headerfiled2..... headerfield6 and urlfield1....urlfield6. I have about over 25 fields to be passed with URL.
    Now I have following questions.
    1. How to make XI payload as name value pairs and part of URL.?
    2. I think the default for http adapater is GET, How to configure http adaper to use POST?
    I appreciate your help.
    Thank you,
    Balaji

    > 1. How to make XI payload as name value pairs and part of URL.?
    You should create the whole URL in a user defined function in mapping.
    > 2. I think the default for http adapater is GET, How to configure http adaper to use POST?
    HTTP adapter (and SOAP adapter) use HTTP POST. GET is not supported.
    Regards
    Stefan

  • PI 7.11 - Sync HTTP receiver adapter with response XML file

    Hi
    We have a File to HTTP scenario in which we need a sync HTTP interface. We send a file to the HTTP address and receive a XML acknowledge. As I read in this forum: sync HTTP interfaces are not possible with the "standard" HTTP adapter. So I found an entry which recommended to use the SOAP adapter instead.
    I configured it:
    - Do Not Use SOAP envelope
    - modules: RequestResponseBeans, CallSapAdapter, ResponseOneWayBean
    If i use this scenario, i get following error in the RWB - Message Display Tool:
    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: java.lang.NullPointerException: while trying to invoke the method com.sap.engine.interfaces.messaging.api.Message.getMessageId() of an object loaded from local variable 'message1'.
    I testet this scenario using CURL and it worked properly. Should this kind of scenario work with the SOAP adapter or do I need to buy/develop an own adapter? Is in NW7.3 possible to configure sync HTTP scenarios?
    Thanks in advance
    Michael

    Hi
    actually i use a simple HTTP receiver CC with the setting "XI Payload in HTTP Body" to send a XML datafile to a webpage (java servlet). This part works fine by now. But, this servlet would also send back a status information to the state of the received datafile, which I like to catch.
    e.g. HTTP response from the servlet (catched using CURL):
    HTTP/1.0 403 Forbidden
    Server: Apache-Coyote/1.1
    X-Powered-By: Servlet 2.4; JBoss-4.3.0.GA (build: SVNTag=JBPAPP_4_3_0_GA date=200801031548)/Tomcat-5.5
    Set-Cookie: JSESSIONID=OALHMomjR9TVgIATi8SrPQ**.ajp13_ls_1; Path=/ls
    Content-Type: text/xml
    Date: Tue, 06 Mar 2012 16:19:56 GMT
    X-Cache: MISS from proxy.xxxx.com
    Via: 1.0 proxy.xxxx.com:xxxx (http_scan/4.0.2.6.19)
    Proxy-Connection: close
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?><!DOCTYPE transportordersfromls [ <!ELEMENT transportordersfromls (userid, clntid, msgid, (transportorderfromls+ | error))> <!ATTLIST transportordersfromls vers CDATA #REQUIRED> <!ELEMENT userid (#PCDATA)> <!ELEMENT clntid (#PCDATA)> <!ELEMENT msgid (#PCDATA)> <!ELEMENT transportorderfromls (refid, status)> <!ELEMENT refid (#PCDATA)> <!ELEMENT status (ok | error+)> <!ELEMENT ok EMPTY> <!ELEMENT error EMPTY> <!ATTLIST error reason (XMLError | SystemNotAvailable | ApplicationError | OTHER) #REQUIRED message CDATA #REQUIRED> ]>
    <transportordersfromls vers="1.0">
        <userid/>
        <clntid>XXXXX</clntid>
        <msgid>0</msgid>
        <error reason="OTHER" message="Access denied"/>
    </transportordersfromls>
    Michael

  • HTTPS Receiver Adapter POST with FILE TYPE parameter

    Hello,
    I need to do a POST to a URL service that validates content of a file. It receives user and password as string parameters and a FILE as a mime type parameter.
    I'll appreciate any help.
    Regards,
    Diego.

    Hi.
    Using Http Receiver Adapter , you can try out this.
    This blog may give some idea-
    /people/amol.joshi2/blog/2006/06/28/must-fire-a-http-get-from-xi---try-this
    Otherwise, try out with callinng this service via SOAP Adapter i.e webservice.
    Rgds,
    moorthy

  • Action and Query-String in HTTP Adapter

    Hi,
    I am doing an IDOC -> SAP PI -> HTTP scenario
    HTTP application is external party (using Party).
    I have to build the URL Dynamically; so I use Dynamic Configuration in Message Mapping.
    The URL format (from help.sap.com) is http://<hostname:port>/<path>?<query-string>
    Hostname and port are know to me.
    From where will I get information about path and query-string , are they mandatory?
    help.sap.com has given details about sender HTTP: http://help.sap.com/saphelp_nwpi711/helpdata/en/44/8f54b8b01e3673e10000000a114a6b/content.htm but i want to know about receiver HTTP.
    Is there any example available?
    Thank you,
    Pankaj.

    > So I have to ask the External Parties to send the message (to SAP PI) to the URL (http://hostname:port/<action>?<query-string>)?
    When you replace the varaibles, yes.
    > Any idea about my original question (about action and query-string in receiver channel's URL) or should I use a RFC destination there (now it will be Type G I suppose)
    Just put the URL of the receiver.
    > There is SSL configuration also between External Parties and SAP PI (if this information is required).
    In that case, you put a URL with https://..

  • HTTP Receiver Adapter payload as single line plain text with out any tags.

    Hi PI experts,
    I have a strange problem in http receiver adapter.
    Sender RFC (SAP)  Receiver: HTTP.
    Receiver system expects the output from XI in the below format in a single line plain text with out any tags in the payload. and the content type should be application/x-www-form-urlencoded
    Group=Test&Sentinel=Web%20Server&Facility=5345&Order Number=XT-XWHM-Y-NA&Serial Number=123456&@LABEL_QUANTITY=5&@LABEL_NAME=111114_Q
    Is there any way to achieve this using http receiver adapter. Business is not ready to accept the output from XI not even in a single element instead they only need it as a JUST a plain text.
    Appreciate early response on this.
    Thanks in Advance,
    Jitender

    Dear Ola,
    Could you elaborate how you achieved in catching the response data from the receiver in case of HTTP receiver adapter?
    The target service is not a WebService but some python script that must to receive some paramters via POST request.
         HOW can I post this parameters?
    Here you entered the fields of the message type of the request in the header parameters of the receiver adapter? Thats fine.
    But what about the message type and vice versa of the response from the receiver?
    Regards
    Rebecca

  • How to set HTTP header field "cookie" with http receiver adapter?

    Hi,
    I am using http receiver adapter (not axis) in a scenario. I could not set a parameter with key cookie in http header. Is there some kind of restriction to set it? I am able to set others like connection and create custom fields using ASMA and dynamic key configuration via UDF on mapping.
    Could you please comment on, is cookie http parameter special or noneditable by PI's http adapter? I am looking for a solution without editing any abap code...
    Regards,

    I believe it is possible since axis adapter provides very same functionality. Let me summarize my scenario may be it helps:
    I am trying to call series of webservice lets say in a BPM. First service (login service) will provide me with a session id (in http header with key Set-Cookie) then I will call another service which has that session id in its http header with key cookie then I am going to logout. So I am testing the second part now, but it doest let me send cookie http header parameter.
    I hope I clarified a bit more my problem.
    Regards,

  • HTTP Sender and HTTP Receiver adapter. Pls advice urgent

    Hi All,
    There is one Third Party that wants to send XML data and receive XML data with XI.
    Please let me know can I use HTTP for that.
    How to use HTTP Sender part?
    How to use HTTP Receiver Adapter?
    Pls send blogs/doc for that
    Thanks and Regards

    hi.,
    Check this thread for the code for a HTTP Client,
    /message/266750#266750 [original link is broken]
    Also, check these blogs. They use HTTP adapters for their configuration,
    /people/siva.maranani/blog/2005/05/21/jdbc-stored-procedures
    /people/sriram.vasudevan3/blog/2005/02/14/calling-stored-procs-in-maxdb-using-sap-xi
    http://help.sap.com/saphelp_nw04/helpdata/en/44/79973cc73af456e10000000a114084/content.htm
    Check these links for the configuration part.
    http://help.sap.com/saphelp_nw04/helpdata/en/43/64db4daf9f30b4e10000000a11466f/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/bc/bb79d6061007419a081e58cbeaaf28/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/44/79973cc73af456e10000000a114084/content.htm
    Weblog :
    /people/sriram.vasudevan3/blog/2005/01/11/demonstrating-use-of-synchronous-asynchronous-bridge-to-integrate-synchronous-and-asynchronous-systems-using-ccbpm-in-sap-xi - although this weblog is
    aimed at explaining the sync-async bridge.. Sriram has taken http-to-file scenario as the example
    note:reward points if solution found helpfull.....
    regards
    chandrakanth.k

  • JDBC Receiver Adapter with Native SQL String

    Hi experts
    I need to use a JDBC Receiver Adapter with Message Protocol of Native SQL String, but I don´t understand how to create my data type for XML Document Format. I studied the following example from the SAP Library,
    INSERT INTO tableName (column-name1, column-name2, column-name3) VALUES(u2018column-value1u2019, u2018column-value2u2019, u2018column-value3u2019)
    i´ll be very thankful of your recommendations.

    Another simple way is..
    Create receiver data structure like this....
    <StatementName>
    <anyName action=u201DSQL_DMLu201D>
    <access>INSERT INTO tableName (column-name1, column-name2, column-name3) VALUES('$column-value1$', '$column-value2$', '$column-value3$')
    </access>
    <key>
      <column-value1>value1</column-value1>
      <column-value2>value2<column-value2>
       <column-value3>value3<column-value3>
    </key>
    </anyName > 
    </StatementName>
    Rest are all same.

  • HTTPS communication using HTTP receiver adapter URL address as Address Type

    Hi All,
    If some one who has tried HTTPS communication using HTTP receiver adapter using URL address as Address type can you please guide me what are the steps need to be done.
    Note : Address type is a parameter in HTTP adapter setup .
    Regards,
    Reddy

    Hi,
    Check this,
    Configurations in Integration Directory
    The plain HTTP adapter gives the receiver system the following specifications:
    &#151; Specifications for addressing using a URL address:
    Target host, service number, and path prefix including query string:
    http://<hostname:port>/<path>?<query-string>
    You can identify the target host (HTTP port) of a SAP Web Application Server using
    the
    ICM monitor
    Host and port of the HTTP proxy (optional if there is a firewall between the plain
    HTTP adapter and the receiver system)
    Authentication data for the receiver system.
    See also: transaction Display and Maintain RFC Destinations (SM59).
    &#151; Specifications for addressing using an HTTP destination:
    HTTP destination
    &#151; Parameters from the communication channel for technical routing
    Content type (the entry text/XML is expected as default)
    Specifies the format that the message contents (the payload) should have.
    Optional header fields for the receiver-specific protocol
    Attributes for the query string
    1. Sender party
    2. Sender service
    3. Receiver Interface
    4. Message ID
    5. Quality of service
    6. Queue ID
    All attributes are selected except for the queue ID. If you do not want a value to be
    transferred to the receiver, deselect it. The queue ID is only required if the quality of
    service is EOIO.
    Specifications for payload manipulation
    XML code (default UFT-8)
    Specifies the character set.
    URL escaping
    Presents the XML in a URL-enabled format. Special characters that could be
    interpreted as control characters are replaced with escape characters (masked).
    Prolog
    Enhances the payload for particular servers (optional, see below).
    Epilog
    Enhances the payload for particular servers (optional, see below).
    Enhancing the Payload
    Regards
    Seshagiri

  • How to trace HTTP receiver adapter error

    Hi All,
    My scenario is to send PO details to vendor site (HTTPS URL). MY SSL configuration is complete and I have used the SSL certificates in RFC destination of type 'G'. When I test RFC destination connection, it gives me the correct response as '200'.
    This RFC destination is used in HTTP receiver adapter of XI to connect to site and post PO xml document. It is passing successfully through Integration Server, as I get success flag in 'SXMB_MONI'. But, it is not reaching our vendor's site.
    Can someone help me, with what's going wrong, or how can I trace the error.
    Thanks & Regards,
    Amit

    Hi Sadhna,
    It's a B2B scenario, where my sender is configured correctly and the receiver as well.
    In sxmb_moni, I am getting successfull status. But, it is not reaching receiver.
    Thanks & Regards,
    Amit

  • Paramter setting in URL in the case of HTTP receiver adapter

    I have the following requirment: Can you anyone please help me how to define DATATYPE and configure in HTTP adapter:
    The web page is developed in JSP page its body contains parameter(for example:<textarea name="xml" cols="70" rows="150" wrap="off">) to pass to the URL.
    In this suitation,1) how can define my datatype in XI repository. ,Root element should be start with "xml" tag? 2). what are configuration parameters in HTTP receiver adapter.
    3). Using HTTP post application.
    Your response is highly appreciated.
    Thanks
    Venkat

    I have the following requirment: Can you anyone please help me how to define DATATYPE and configure in HTTP adapter:
    The web page is developed in JSP page its body contains parameter(for example:<textarea name="xml" cols="70" rows="150" wrap="off">) to pass to the URL.
    In this suitation,1) how can define my datatype in XI repository. ,Root element should be start with "xml" tag? 2). what are configuration parameters in HTTP receiver adapter.
    3). Using HTTP post application.
    Your response is highly appreciated.
    Thanks
    Venkat

  • HTTP receiver Adapter configuration

    Hi All,
    I want to post an XML message using HTTP Receiver Adapter for my BPM scenario (Idoc to HTTP service)
    The receiver has Oracle gateway and it expects message in following format.
    HTTP Header
       Http–Version: HTTP/1.1
       Authorization: Digest username=”myusername”,
                             realm=”[email protected]”,
                             nonce=”dcd98b7102dd2f0e8b11d0f600bfb0c093”,
                             uri=”/dir/index.html”,
                             qop=auth,
                             nc=00000001,
                             cnonce=”0a4f113b”,
                             response=”6629fae49393a05397450978507c4ef1”,
                             opaque=”5ccc069c403ebaf9f0171e9517f40e41”
                             Content–length: 12345
                             Content–type: text/html
    HTTP Body
       TRANSPORT_PROTOCOL=OXTA
       TRANSPORT_PROTOCOL_VERSION=1.0
       REQUEST_TYPE=SEND
       MESSAGE_ID=A1234567890ZZ0987654321
       MESSAGE_TYPE=XML
       MESSAGE_STANDARD=OAG
       TRANSACTION_TYPE=PO
       TRANSACTION_SUBTYPE=PROCESS
       DOCUMENT_NUMBER=12345
       PARTYID=9999
       PARTY_SITE_ID=8888
       PROTOCOL_TYPE=HTTPS–OXTA
       PROTOCOL_ADDRESS=HTTPS://www.me.com/servlets/oracle.ecx.oxta.
       transportAgentServer
       USERNAME=myusername
       PASSWORD=myloginpassword
       ATTRIBUTE1=
       ATTRIBUTE2=
       ATTRIBUTE3=
       ATTRIBUTE4=
       ATTRIBUTE5=
       PAYLOAD=<xml ... ...>
    I think this is not a typical HTTP URL type of format, is it?
    And I am not sure how I can build the message. Where do I put the parameters like TRANSPORT_PROTOCOL, TRANSPORT_PROTOCOL_VERSION, REQUEST_TYPE etc in the HTTP adapter?
    Also is there any place where I can see the final actual XI message that is sent to HTTP service?
    Any help will be really appreciated.
    Thanks and regards,
    Rahul.

    Hi Rajeev,
    The receiver system should have the details about the content type it expects. I got that from the team who monitors our receiver system.
    The HTTP Body of HTTP adapter is made up of PrologPayloadEpilog.
    So I added the paramter list that receiver system expects as part of the Prolog. Refer to the HTTP body that I have posted in my earlier message. Out of that till ".....Payload=" is added to Prolog and XI then appends actual payload to it.
    To be precise -
    TRANSPORT_PROTOCOL=OXTA&TRANSPORT_PROTOCOL_VERSION=1.0&MESSAGE_TYPE=XML&MESSAGE_STANDARD=UNIVERSAL&TRANSACTION_TYPE=XXXE&TRANSACTION_SUBTYPE=ORDER_I&DOCUMENT_NUMBER=PO12345&PARTY_SITE_ID=ESAP_ORDER_I&USERNAME=***&PASSWORD=**&PAYLOAD=
    So in the end it worked out well.
    Cheers,
    Rahul.

  • Dynamic URL for HTTP receiver adapter

    Hi all,
    when the XI send the http request to the target system, the format maybe like this:
    header + body the body is including: Prolog, payload and Epilog
    here is about the target system have a 'input' parameter(maybe string type)
    is it possible to pass the 'head + body' these value(or maybe the whole http request message) into input
    i mean is it possible to set the dynamic URL for http receiver adapter like this:
    http://host:port/path?input=<the header and body>
    i have searched the blog Dynamic Configuration of Some Communication Channel Parameters using Message Mapping
    Link:[/people/william.li/blog/2006/04/18/dynamic-configuration-of-some-communication-channel-parameters-using-message-mapping]
    and the similar threads in the forum
    please give me some advice
    thanks in advance

    When a HTTP server requests the whole message as URL parameters, then I assume that the server also requests an HTTP GET, which is not supported by XI.
    Could you check this?
    Regards
    Stefan

  • HTTP receiver adapter: dynamic configuration

    I was told that if I have a URL and some parameters, I can use a sync HTTP receiver adapter to call a site.
    I know this can be done using some kind of dynamic configuration, but I am not familiar with this adapter.
    The most important question here is that I need to know if this can be done throw PI, so my question is:
    Is there a parameter limit in the HTTP adapter? If so, what is the quantity of parameters that I can give to the adapter?

    for the ASMA parameters you can use for the HTTP receiver adapter check
    Configuring the Receiver Plain HTTP Adapter - http://help.sap.com/saphelp_nw04/helpdata/en/43/64dbb0af9f30b4e10000000a11466f/frameset.htm

Maybe you are looking for

  • Problem of Query of Module Purchase Order, Good Receipt PO, Good Return

    Hi, I would like to seek for assistance regarding double entries of documents,  I have used the query and found out lately the it has a problem, Please refer to thread "Query of Module Purchase Order, Good Receipt PO, Good Return" for details. You he

  • Generic throws clause causes unreported exception

    I'm trying to pass a block to a ctor, which can throw an exception. The problem can be reproduced with this sample program. interface Bar<X extends Exception> {     void run() throws X; public class Foo {     public Foo() {}     public <X extends Exc

  • Event Handling Techniques

    Hi All,      I have encountered some code which takes a somewhat different approach to event handling that I have used previously. This is a basic example of the principles: private final static String = "CMD_ONE"; private final static String = "CMD_

  • Keep buffer pool after restart of the server

    Hi, What happens to the blocks in keep buffer pool when database is restarted. I was thinking that Oracle database will reload the object that I have declared storage as keep. But seems like that's not how how database behaves. How can I make sure wh

  • Uverse won't work in Safari

    All of a sudden I go to Uverse on Safari and after logging in successfully, it says,An error has occurred There was a problem playing the requested video. Please clear your browser cache and restart your browser. Error code: 5 (Access is denied). I j