ABAP calling HTTPS URL using CL_HTTP_CLIENT

Hello,
I have a requirement where I will have to call a URL inside an ABAP or BSP passing some query parameters  program and then the response will be a big string with all the data I need.
I found I can use CL_HTTP_CLIENT thanks to Brian weblog.
The URL is HTTPS, the technical contact told me that I would need to encrypt the data in SSL and after pass to the URL as a query parameter.
Also the response will be encrypted so I will need to convert from SSL before being able to interpret it.
He also said that I need to install a certificate on my webas server, and use this certificate.
So my doubts are:
Do the class CL_HTTP_CLIENT automatic convert the data to SSL?
How do I install and use such certificate?
Regards,
Mauricio

check out this weblog (under subheading <b>Release 620</b>) to understand how you can load the certificate and use the same with cl_http_client call
/people/thomas.jung3/blog/2004/11/17/bsp-a-developers-journal-part-xiv--consuming-webservices-with-abap
Regards
Raja

Similar Messages

  • Call http url in Abap - Should not open Browser

    Hi Friends,
       I have a requirement where i need to check whether a perticular http service is running or not. For that i need a some code to call http url from abap and it should not open the browser. If that perticular url is not found or time out then i should know that in program...
    Is there any way to do that..

    just run the following url (after changing the values for host,etc) from browser
    http://<abaphost>.<domain>.com:<port>/sap/public/ping
    to get the values for http://<abaphost>.<domain>.com:<port> just go to transaction se80 and choose bsp application option and choose any existing bsp application and then doubl click on a page. on the right side click on the attributes tab and at the end you can find the url
    Regards
    Raja

  • Calling a URL using JavaScript even handler

    When I'm trying to call another URL using JavaScript, it doesn't work.
    I did following things,
    1).Created a Button
    2).In javascript event handler, I'm calling Javascript function doSearch()
    3). I wrote this function in Header Text Section of the Form Tex as below
    <SCRIPT language="JavaScript">
    function doSearch() {
    location="http://www.oracle.com"
    </SCRIPT>
    When I saw the source of that button, it shows me as following,
    --<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0"><TR><TD>
    <INPUT TYPE="BUTTON" NAME="FORM_TO_CALL_CUSTOM.DEFAULT.CALL_REPORT.01" VALUE="CALL_REPORT" onClick="doSearch(); do_event(this.form,this.name,1,'ON_CLICK','');">
    </TD></TR></TABLE></TD></TR></TABLE>
    But, it doesn't call that URL.
    Plz. guide me.
    null

    Sorry, the code for the CALL_Report button is as follow.
    --<Tab BORDER="0" CELLSPACING="0" CELLPADDING="0"><TR><TD>
    <INPUT TYPE="BUTTON" NAME="FORM_TO_CALL_CUSTOM.DEFAULT.CALL_REPORT.01" VALUE="CALL_REPORT" onClick="doSearch(); do_event(this.form,this.name,1,'ON_CLICK','');">
    </TD></TR></TABLE></TD></TR></TABLE
    null

  • Post an XML on HTTPS URL using XI

    Hi All,
    My scenario is SAP SRM - XI - HTTP, where I am posting an XML message from XI to HTTPS URL using HTTP receiver adapter.
    Can you tell me what all step needs to be done to configure HTTP receiver adapter in this case. Also, since I have to post an XML message on HTTPS URL (Which is outside the domain), do I need to apply SSL certificates as well?
    Appreciate your help!!!
    Thanks & Regards,
    Amit

    Hi Amit
    regarding HTTP URl  just check these
    You can use the HTTP adapter. Refer to following SDN TV demo of the HHTP adapter for details steps involved into it.
    https://media.sdn.sap.com/SDNTV/main.asp?mediaId=107
    HTTPS using XMLSPY
    http://help.sap.com/saphelp_nw04/helpdata/en/14/ef2940cbf2195de10000000a1550b0/frameset.htm
    The HTTPS configuration data of the Adapter Engines has to be configured in the SLD.
    More Information in the "SAP Security Guide XI"
    http://help.sap.com/saphelp_nw04/helpdata/de/f7/c2953fc405330ee10000000a114084/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/43/64db4daf9f30b4e10000000a11466f/content.htm
    Under Security Check for Inbound Messages, you can specify which HTTP Security Level is to be assumed for incoming messages. You can choose from the following security levels:
    &#9675; HTTP (default value)
    &#9675; HTTPS without client authentication
    &#9675; HTTPS with client authentication
    http://help.sap.com/saphelp_nw04/helpdata/en/14/ef2940cbf2195de10000000a1550b0/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/fc/5ad93f130f9215e10000000a155106/frameset.htm
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/d23cbe11-0d01-0010-5287-873a22024f79
    http://help.sap.com/saphelp_nw04/helpdata/en/f1/2de3be0382df45a398d3f9fb86a36a/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/65/6a563cef658a06e10000000a11405a/content.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/f1/2de3be0382df45a398d3f9fb86a36a/frameset.htm
    <b>Pls reward if useful </b>

  • How to call a url using javascript

    Hi friends
    Iam a newbie i have a requirement
    i have to call some n number of URL using javascript i have all my url in one table .... i have to call all the url from that table ... and the output of the url should be saved in a flat file...The output of the url is in XML format... can any one please suggest me in doing my task ... and one more thing in which tool can i run the javascript coding...please give me ur suggestion and idea how it can be done ....
    My URL for example ll be like this as shown below wen i run this url it ll give me an XML format output
    HTTP://www.myserver.com/ev_api.action?user_id=<username>l&password=<password>&statevar=history&cutoff=<date>&id=<id>
    Thanks in advance
    Thiliban

    thilib wrote:
    In this OTN is there is javascript forum can please give me the link for it
    Thanks
    thilibJust to rephrase Walter's reply: there is no javascript forum in OTN!

  • Does E52 support calling HTTPS URLs with the brows...

    Hi,
    does anybody happen to know if HTTPS websites (SSL encrypted web pages) can be browsed with E52?
    On some pages i found that SSL/TLS support is reported as "no" for this handy, which i do not understand, since this is a basic feature nowadays...
    Thanks and best regards
    Alexander
    Solved!
    Go to Solution.

    Yes, you have the same OS and Opera mini is Java. I noticed that the default browser doesn't allways show all the content. That could be a problem filling in forms etc... Opera mini has no issues.
    ‡Thank you for hitting the Blue/Green Star button‡
    N8-00 RM 596 V:111.030.0609; E71-1(05) RM 346 V: 500.21.009

  • Standard SAP code is calling HTTP - want it to call HTTPS

    We have recently switched our environment to HTTPS however some SAP code such as this:
    FORM get_url  USING    p_application
                  CHANGING p_url.
      DATA: lw_application_name TYPE string.
      lw_application_name = p_application.
      CALL METHOD cl_wd_utilities=>construct_wd_url
        EXPORTING
          application_name = lw_application_name
          namespace        = 'sap'
        IMPORTING
          out_absolute_url = p_url. "
    ENDFORM.                    " GET_URL
    calls the HTTP URL instead of the HTTPS URL.
    Is there a way to change this globally so that call code calls the HTTPS value (with the correct port as defined in the ICM - i.e. 443)?

    Hi
    Check the below link.
    [Calling https:// url from ABAP code IF_HTTP_CLIENT;

  • Can any body help me in reading from HTTPS URL

    I need to read an HTTPS URL and store the response within a table .
    How will I manage to do it from within a servlet using URLConnection and openStream as it does'nt work .
    How will JSSE help in this regard .
    Since I also need to give the userid and password to get into the file and read the file
    https://anyhost.com/readthisfile.html
    somnath
    Web Developer

    Hi,
    The Java Secure Socket Extension (JSSE) library from Sun Microsystems lets you access a secure Web server from behind a firewall via
    proxy tunneling. To do this, the JSSE application needs to set the https.ProxyHost and https.ProxyPort system properties. The
    tunneling code in JSSE checks for "HTTP 1.0" in the proxy's response. If your proxy, like many, returns "HTTP 1.1", you will get an
    IOException. In this case, you need to implement your own HTTPS tunneling protocol.
    In this article, I will show you how to create a secure socket that tunnels through the firewall, and pass it to the HTTPS stream handler to
    open HTTPS URLs using the URLConnection class.
    Open the http tunnel socket to the proxy
    The first step to creating your secure socket is to open the tunneling socket to the proxy port. The code needed to do this proxy
    handshaking can be found in the sample code SSLClientSocketWithTunneling.java that comes with the JSSE distribution. First, a normal socket is created that connects to
    the proxy port on the proxy host (line 65). After the socket is created, it is passed to the doTunnelHandshake() method where the proxy's tunneling protocol is called:
    54 SSLSocketFactory factory =
    55 (SSLSocketFactory)SSLSocketFactory.getDefault();
    56
    57 /*
    58 * Set up a socket to do tunneling through the proxy.
    59 * Start it off as a regular socket, then layer SSL
    60 * over the top of it.
    61 */
    62 tunnelHost = System.getProperty("https.proxyHost");
    63 tunnelPort = Integer.getInteger("https.proxyPort").intValue();
    64
    65 Socket tunnel = new Socket(tunnelHost, tunnelPort);
    66 doTunnelHandshake(tunnel, host, port);
    In doTunnelHandshake(), an http "CONNECT" command is sent to the proxy, with the secure site's hostname and port number as the parameters (line 161). In the original
    tunneling code on line 206 in JSSE, it then checks for "HTTP/1.0 200" in the proxy's reply. If your organization's proxy replies with "HTTP 1.1", an IOException will be
    thrown. To get around this, the code here checks for the reply "200 Connection Established", which indicates that tunneling is successful (line 207). You can modify the
    code to check for the expected corresponding response from your proxy:
    139 private void doTunnelHandshake(Socket tunnel, String host, int port)
    140 throws IOException
    141 {
    142 OutputStream out = tunnel.getOutputStream();
    143 String msg = "CONNECT " + host + ":" + port + " HTTP/1.0\n"
    144 + "User-Agent: "
    145 + sun.net.www.protocol.http.HttpURLConnection.userAgent
    146 + "\r\n\r\n";
    147 byte b[];
    148 try {
    149 /*
    150 * We really do want ASCII7 -- the http protocol doesn't change
    151 * with locale.
    152 */
    153 b = msg.getBytes("ASCII7");
    154 } catch (UnsupportedEncodingException ignored) {
    155 /*
    156 * If ASCII7 isn't there, something serious is wrong, but
    157 * Paranoia Is Good (tm)
    158 */
    159 b = msg.getBytes();
    160 }
    161 out.write(b);
    162 out.flush();
    163
    164 /*
    165 * We need to store the reply so we can create a detailed
    166 * error message to the user.
    167 */
    168 byte reply[] = new byte[200];
    169 int replyLen = 0;
    170 int newlinesSeen = 0;
    171 boolean headerDone = false; /* Done on first newline */
    172
    173 InputStream in = tunnel.getInputStream();
    174 boolean error = false;
    175
    176 while (newlinesSeen < 2) {
    177 int i = in.read();
    178 if (i < 0) {
    179 throw new IOException("Unexpected EOF from proxy");
    180 }
    181 if (i == '\n') {
    182 headerDone = true;
    183 ++newlinesSeen;
    184 } else if (i != '\r') {
    185 newlinesSeen = 0;
    186 if (!headerDone && replyLen < reply.length) {
    187 reply[replyLen++] = (byte) i;
    188 }
    189 }
    190 }
    191
    192 /*
    193 * Converting the byte array to a string is slightly wasteful
    194 * in the case where the connection was successful, but it's
    195 * insignificant compared to the network overhead.
    196 */
    197 String replyStr;
    198 try {
    199 replyStr = new String(reply, 0, replyLen, "ASCII7");
    200 } catch (UnsupportedEncodingException ignored) {
    201 replyStr = new String(reply, 0, replyLen);
    202 }
    203
    204 /* We check for Connection Established because our proxy returns
    205 * HTTP/1.1 instead of 1.0 */
    206 //if (!replyStr.startsWith("HTTP/1.0 200")) {
    207 if(replyStr.toLowerCase().indexOf(
    208 "200 connection established") == -1){
    209 throw new IOException("Unable to tunnel through "
    210 + tunnelHost + ":" + tunnelPort
    211 + ". Proxy returns \"" + replyStr + "\"");
    212 }
    213
    214 /* tunneling Handshake was successful! */
    215 }
    Overlay http tunnel socket with SSL socket
    After you have successfully created the tunneling socket, you overlay it with the SSL socket. Again, this is not difficult to do:
    54 SSLSocketFactory factory =
    55 (SSLSocketFactory)SSLSocketFactory.getDefault();
    56
    57 /*
    58 * Set up a socket to do tunneling through the proxy.
    59 * Start it off as a regular socket, then layer SSL
    60 * over the top of it.
    61 */
    62 tunnelHost = System.getProperty("https.proxyHost");
    63 tunnelPort = Integer.getInteger("https.proxyPort").intValue();
    64
    65 Socket tunnel = new Socket(tunnelHost, tunnelPort);
    66 doTunnelHandshake(tunnel, host, port);
    67
    68 /*
    69 * Ok, let's overlay the tunnel socket with SSL.
    70 */
    71 SSLSocket socket =
    72 (SSLSocket)factory.createSocket(tunnel, host, port, true);
    73
    74 /*
    75 * register a callback for handshaking completion event
    76 */
    77 socket.addHandshakeCompletedListener(
    78 new HandshakeCompletedListener() {
    79 public void handshakeCompleted(
    80 HandshakeCompletedEvent event) {
    81 System.out.println("Handshake finished!");
    82 System.out.println(
    83 "\t CipherSuite:" + event.getCipherSuite());
    84 System.out.println(
    85 "\t SessionId " + event.getSession());
    86 System.out.println(
    87 "\t PeerHost " + event.getSession().getPeerHost());
    88 }
    89 }
    90 );
    The code had called the SSLSocketFactory's getDefault() method earlier to get an instance of the SSLSocketFactory (line 54, repeated above). Next, it passes the
    tunneling socket that was created in the previous step to the createSocket() method of the SSLSocketFactory. The createSocket() method returns an SSLSocket that is
    connected to the destination host and port via the proxy tunnel. You can optionally add a HandshakeCompletedListener to the socket if you wish to be informed when the
    SSL handshaking is completed.
    The SSLSocket created is basically ready for use to transfer secure contents. The startHandshake() method is called to start the SSL handshaking (line 98). After which, you
    can issue the http "GET" command to retrieve the secure pages (line 105):
    91
    92 /*
    93 * send http request
    94 *
    95 * See SSLSocketClient.java for more information about why
    96 * there is a forced handshake here when using PrintWriters.
    97 */
    98 socket.startHandshake();
    99
    100 PrintWriter out = new PrintWriter(
    101 new BufferedWriter(
    102 new OutputStreamWriter(
    103 socket.getOutputStream())));
    104
    105 out.println("GET http://www.verisign.com/index.html HTTP/1.0");
    106 out.println();
    107 out.flush();
    However, issuing http commands to the tunneling SSL socket to access Webpages is not ideal because it would mean having to rewrite the whole http protocol handler from
    scratch. Instead, you should use the HTTPS URL APIs that the JSSE already includes for that purpose. To do this, you have to pass the tunneling SSL socket to the HTTPS URL
    stream handler.
    Pass SSL socket to HTTPS URL stream handler
    The JSSE library has an HttpsURLConnection class that is in the com.sun.net.ssl package, which extends the java.net.URLConnection class. An HttpsURLConnection object
    is returned by the URL object's openConnection() method when "HTTPS" is specified as the protocol. The HttpsURLConnection class has a method, setSSLSocketFactory(),
    that lets you set an SSLSocketFactory of your choice. To pass the tunneling SSL socket to the HTTPS URL stream handler, you would set the setSSLSocketFactory()
    method's parameter with a socket factory that returns the tunneling SSL socket that you created previously.
    To do this, you would wrap the code discussed previously in an SSLTunnelSocketFactory class that extends from the SSLSocketFactory class. The SSLSocketFactory is an
    abstract class. To extend it, you must implement the createSocket() method to return the tunneling SSL socket that you created earlier:
    12 public SSLTunnelSocketFactory(String proxyhost, String proxyport){
    13 tunnelHost = proxyhost;
    14 tunnelPort = Integer.parseInt(proxyport);
    15 dfactory = (SSLSocketFactory)SSLSocketFactory.getDefault();
    16 }
    44 public Socket createSocket(Socket s, String host, int port,
    45 boolean autoClose)
    46 throws IOException,UnknownHostException
    47 {
    48
    49 Socket tunnel = new Socket(tunnelHost,tunnelPort);
    50
    51 doTunnelHandshake(tunnel,host,port);
    52
    53 SSLSocket result = (SSLSocket)dfactory.createSocket(
    54 tunnel,host,port,autoClose);
    55
    56 result.addHandshakeCompletedListener(
    57 new HandshakeCompletedListener() {
    58 public void handshakeCompleted(HandshakeCompletedEvent event) {
    59 System.out.println("Handshake finished!");
    60 System.out.println(
    61 "\t CipherSuite:" + event.getCipherSuite());
    62 System.out.println(
    63 "\t SessionId " + event.getSession());
    64 System.out.println(
    65 "\t PeerHost " + event.getSession().getPeerHost());
    66 }
    67 }
    68 );
    69
    70 result.startHandshake();
    71
    72 return result;
    73 }
    Notice that the SSLTunnelSocketFactory contains a default SSLSocketFactory object. The default SSLSocketFactory object can be instantiated from a call to the static
    method getDefault() (line 15). You need this SSLSocketFactory object to overlay the tunnel socket with the SSL socket, as discussed earlier. You also call the default
    object's getDefaultCipherSuites() and getSupportedCipherSuites() methods when implementing the corresponding abstract methods of the SSLSocketFactory super
    class. For implementation details, please refer to the complete source code for the SSLTunnelSocketFactory in Resources.
    Tunnel through the proxy via URLConnection
    To tunnel through the proxy via URLConnection in your JSSE application, after you call the openConnection() method, check if the returned object is that of the
    HttpsURLConnection. If so, you instantiate your SSLTunnelSocketFactory object and set it in the setSSLSocketFactory() method (lines 22 through 25):
    10 public class URLTunnelReader {
    11 private final static String proxyHost = "proxy.sg.ibm.com";
    12 private final static String proxyPort = "80";
    13
    14 public static void main(String[] args) throws Exception {
    15 System.setProperty("java.protocol.handler.pkgs",
    16 "com.sun.net.ssl.internal.www.protocol");
    17 //System.setProperty("https.proxyHost",proxyHost);
    18 //System.setProperty("https.proxyPort",proxyPort);
    19
    20 URL verisign = new URL("https://www.verisign.com");
    21 URLConnection urlc = verisign.openConnection(); //from secure site
    22 if(urlc instanceof com.sun.net.ssl.HttpsURLConnection){
    23 ((com.sun.net.ssl.HttpsURLConnection)urlc).setSSLSocketFactory
    24 (new SSLTunnelSocketFactory(proxyHost,proxyPort));
    25 }
    26
    27 BufferedReader in = new BufferedReader(
    28 new InputStreamReader(
    29 urlc.getInputStream()));
    30
    31 String inputLine;
    32
    33 while ((inputLine = in.readLine()) != null)
    34 System.out.println(inputLine);
    35
    36 in.close();
    37 }
    38 }
    You can then access the HTTPS URLs using the APIs provided by the URLConnection class. You don't need to worry about the format of the http GET and POST commands,
    which you would if you used the SSL Socket APIs.
    The complete source code for the SSLTunnelSocketFactory and the application code that connects to a secure URL using proxy tunneling is included in Resources. To
    compile and run the application, you would need to download and install Sun's JSSE from its Website, also listed in Resources.
    Conclusion
    If your JSSE application could not tunnel through your organization's firewall, you need to implement your own tunneling socket. The sample code included with the JSSE
    distribution shows you how to open an SSL socket tunnel. This article goes one step further to show you how to pass the tunneling socket to the HTTPS URL stream handler,
    and saves you the trouble of rewriting a http handler
    I hope this will help you.
    Thanks
    Bakrudeen

  • Hitting a HTTPS url from SAP PI

    Dear All,
    Please let me know how to hit a HTTPS url using plain HTTP adapter in SAP PI. I was just provided with a url and user credentials.
    Regards
    Koti Reddy

    Hi Koti,
    Please perform the HTTPS settings mentioned in the below link before you start the using.
    http://scn.sap.com/docs/DOC-26145
    Regards,
    Naveen

  • CXML PO posting on HTTPS url

    Hi,
    My scenario is to post an cXML PO document on HTTPS url using XI.
    I tried to import cXML DTD (standard) in XI, but it is of no use, as Vendor wants a customize cXML message. My approach is to create an underline xml structure in XI and then using Adapter Module programing add the additional cXML tag to the XML structure.
    Also, the credentials are passed through Ariba Network.
    Please let me know, whether my approach is right? or do I need to ask my Client to go buy an adapter from Seeburger or iWay?
    Please advise.
    Regards,
    Amit

    Thanks Prateek,
    I will create a base xml structure in IR, as per the Vendor's xml structure (excluding tag for cXML) and then using adapter Module program, I will add additional tag of cXML. Will it work?
    MY xml structure is like this:
    <cXML payloadID="111122222333335556667678889999999999=" timestamp="2007-03-12T13:13:59-04:00" version="1.2.011" xml:lang="en-US">
      <Header>
    </Header>
    <Request>
    </Request>
    </cXML>
    Header & Request structure will be created in IR and then using adapter module program add a tag for cXML.
    Regards,
    Amit

  • Calling a URL from WD for ABAP 2004s

    Hi,
    In our scenario we would like to call workflow items from a web dynpro for abap application. We do not use a portal.
    I have build an alv from where the user can select his workflow tasks. A button then calls a method to trigger workflow. Within the method I have te workitem and the correct url available.
    Please let me know how to call the url and if possible let the url start the session in the current browser window (the window from where I started the url).
    Message was edited by: Raymond Does
    Solved it. Solution can be found in the Quiz example.
    Message was edited by: Raymond Does

    Hi Yash,
    There is the code :-)
    <Field name='fieldname'>
    <Display class='Link'>
    <Property name='name' value='link to launch jsp'/>
    <Property name='URL' value='http://localhost:8080/idm/output?param="hello"'/>
    </Display>
    </Field>
    thanx
    Shant

  • Calling HTTP from ABAP

    Hi ,
    I want to call HTTP link from ABAP. On initial research , I found that I can do the task in 2 ways:---
    1. by using class cl_http_client,
    2. by using program RSHTTP20 .
    Is it the correct information I got.
    Out of the 2 methods, which method can I prefer and what are d pros and cons of the above methods?
    Please help.
    Thanks,
    Shivaa...

    Hi All,
    I have a problem to pass a file.txt in a parameter of a web service.
    Iam using CL_HTTP_CLIENT and I am passing the parameters (user, password and file):
    clear wa_form.
    wa_form-name = 'user'.
    wa_form-value = '33333333333'.
    append wa_form to it_form.
    clear wa_form.
    wa_form-name = 'password'.
    wa_form-value = '11111111'.
    append wa_form to it_form.
    clear wa_form.
    wa_form-name = 'file'.
    wa_form-value = data. ---> "data" is a type string with the data of the file.txt.
    append wa_form to it_form.
      r_client->request->set_form_fields( fields = it_form ).
    I have not problem with the user and password parameters.
    Thank.

  • Call external URL from ABAP userexit, capture data and return it to SAP?

    My apologies if this question has been asked before, but I've searched for a few hours today and haven't found anything directly related to my question.  Thank you in advance for any help you may be able to provide!
    I would like to be able to make a call from an SAP userexit during Sales Order Entry in the VA01 transaction in the SD module to an external website, allow the user to capture some data in the external site and then pass that data back into the userexit where I can use it to populate internal tables, etc.
    I'm completely unfamiliar with Web Dynpro programming, but this seems like a good place to start my search for a solution. 
    Does this sound like a problem that can be solved with Web Dynpro and what documentation or code examples should I reference to go about building such a solution.
    I should also note that I'm hoping to build a solution that could be called from any userexit in R/3, SAP ERP, SAP CRM, etc. and would obviously need to learn about what dependencies to consider (ex: SAP GUI version, SAP product release number, Web AS release, etc.).
    Eric

    Thank you for the response.  Let me provide some additional information.
    The external application will be a Hosted Web page.  It is not an SAP system. 
    The external application will be a web page served by a separate system outside of the company domain(shouldn't matter what the technology is I would think - but the web page will be hosted by a different company than the one calling the URL) that would appear as a web page in which the user will enter data, logic will be performed on that data and then some or all of the data would need to be passed back to the calling point in SAP.
    For practical discussions it doesn't matter to me if the call in ABAP occurs in an SD userexit, in a custom report, in an HR screen or in a CRM business partner screen.  There will be many places where this external application may be called from and I'm just trying to figure out how to call an external HTTPS URL and return data from that web page to the calling point in ABAP.
    I hope that clarifies my question.
    Thanks!
    Eric

  • How to read XML file kept on NON-SAP server using the Http URL ?

    Dear Experts,
    I am working on CRM2007 web UI. I need to read a XML file placed on a shared server location by a third party program. Then process that XML file into CRM and create a quotation using the data extracted from the file.
    All i have with me is the http URL that points to the location of the file.
    I am supposed to read the file , create quotation and at later point of time i would be asked to update the quotation and then generated new XML representing updated quotation and replace the XML file on shared server location with this new updated XML file.
    I know how to extract data from XML file into ABAP but i have no clue as to how to access the file on some other server using the http url i have and how to read it ?
    I searched on the forum and i found the codes for reading XML file that is located either on client machine OR on the Application server wheareas my file is on some other than sap application server.
    Please help me as its an urgent issue .
    Points will be rewarded for sure.
    Please help.
    Thanks in advance,
    Suchita.
    p.s. : the http url to the file location is like -->
    http://SomeServerDomain/SomeDirectory/file.xml

    hi,
    interesting task.
    to request the file by a http call you need to create an if_http_client object.
    More info is [here|http://help.sap.com/saphelp_nwmobile71/helpdata/en/e5/4d350bc11411d4ad310000e83539c3/frameset.htm]
    to parse the file you either have to work with the ixml packages ([info|http://help.sap.com/saphelp_nwmobile71/helpdata/en/47/b5413acdb62f70e10000000a114084/content.htm]) or you use an XSLT transformation ([info|http://help.sap.com/saphelp_nwmobile71/helpdata/en/a8/824c3c66177414e10000000a114084/content.htm]).
    uploading the final file isn't so easy. if you only have http, you should write a server script to allow uploading of the new file and copying it into the place of the old file. but you definitely need the script.
    now it's your take. depending on how experienced you are in ABAP and networking this might turn out to be easy or pretty complicated.
    have fun,
    anton

  • HTTP GET using ABAP Proxy

    Hi,
    Has anyone tried invoking an HTTP GET using ABAP Proxy?
    It seems we can do it using the func module HTTP_GET....
    I have seen a blog using java proxy but I want to do it using ABAP proxy...
    regards,
    Piyush

    Hi All,
    With my research on SDN, I came to know that we can either do it using HTTP_GET or the calss CL_HTTP_CLIENT.
    But can I do it for a very long HTTP url????
    Please response frends... Dont let me down :/
    regards,
    Piyush

Maybe you are looking for

  • TimedTrigger does not work after opening a popup on version 7.11

    Hi experts, In my application, there are 2 Windows (W_MAIN, W_POPUP) and 2 Views (V_MAIN, V_POPUP). I put TimedTrigger component to the first view, it is used for refreshing page automatically. W_POPUP and V_POPUP are used for opening popup. The Time

  • I can't stay signed in to any site. I have windows 7 64-bit and firefox 3.6.3

    I cannot stay signed in to any site. It will remember my password but will not keep me logged in. I am using Windows 7 64-bit and Firefox 3.6.3 I have deleted my cookies and the cookies.sqlite file in the profile folder. == This happened == Every tim

  • Drawing oval

    Here i draw net consist of 6 rows and 7 columns , then i want to draw oval in the top of the net . I think i wrote correct code but the oval not appear . I want to know why ?? my simple code : import java.awt.BorderLayout; import java.awt.Dimension;

  • I lost my downloaded songs I purchased. Need to download again

    I have lost my recent purchased music downloads while trying to syn two computers. How can I download the songs again? Please help

  • Setting parameter value using hyperlink

    I have a jsp search page which shows records in an html table. In each table row I have the id of the record. I would like to use this id value as a hyperlink and set the value of a hidden field to the id and then submit the form. my idea is to open