Plain HTTP post connections

HI,
Is there any way to limit HTTP posting connections? I know I can limit SAP max conn. in transaction SMQS, but is there any way limiting plain HTTP post?
Now XI is posting XML messages with speed that receiver cannot handle...

Hi,
If you do not send any payload in the http request you are going to get a http error.
For your second requirement, There is no any problem, You can use any existent tool, or maybe develop you own program.
Http client.
http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=(J2EE3417600)ID1536482550DB10501227175138097442End?blog=/pub/wlg/15296
Regards
Ivan

Similar Messages

  • How to send plain text body in HTTP Post method ?

    Hi Exeperts,
    I have a scenario http post - ptoxy. Sender sending the data in http post in plain text body (only field values will be in the body).
    how should i capture this plain text for receiver to map..
    is any udf or xsl code ?
    please guide me for achieving this requirement .
    find the attachment for http post body value.
    Regards
    Ravi

    Hi Mark,
    Thanks for your reply,
    Please share you have any udf  for this .
    can you explain me how should i map to target side.
    what are the configuration should i done in communication channel level
    Regards
    Ravinder.s

  • Maximum HTTP posts to "Plain HTTP" adapter

    Hello,
    I am working on some load testing on a development box that we have for a simple synchronous HTTP<>XI<>RFC interface.  I have tested up to around 45 simultaneous users and the XI box starts to reply with 500 Internal Server Errors to the HTTP posts.  Up until that point it processes the messages fine and returns the correct response and 200 OK codes.
    Could someone direct me to the configuration on the XI box for the maximum number of HTTP requests to process or an explanation of why the server starts to drop POSTs?  Thanks for your help!
    Regards,
    Anthony Cesaro

    Hi,
    have a look at those two parameters from the XI profile:
    icm/HTTP/max_request_size_KB
    Maximum size of HTTP request accepted by ICM
    and
    connection timeout:
    icm/server_port_<xx>
    http://help.sap.com/saphelp_erp2004/helpdata/en/25/7e153a1a5b4c2de10000000a114084/content.htm
    maybe these will help
    Regards,
    michal

  • Connect by HTTP-Post

    Hi,
    am i correct if i think that it is not possible to connect to rwservlet via http-post, only http-get.
    And that is the reason i get REP-56048 when i try it?
    Thanks.
    Regards
    Chris

    Hi,
    thanks for this suggestion. It put my on the right way, because i examined the http-request, sended by the form with paramform=yes.
    In my case a report is called with paramters which executes a sql-query on a database.
    For this a key is configured in cgicmd, that holds the DB-connection data and takes the other parameters from the url-parameters.
    Calling a report per HTTP-Post that doesnt need a database connection was easy, since it didnt need to use the cgicmd-key.
    But calling the cgicmd-key didnt work.
    The report enginge crashed:
    [2012/6/12 11:1:58:807] Exception 50125 (org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 208 completed: Maybe
         at com.sun.corba.se.internal.iiop.IIOPConnection.purge_calls(IIOPConnection.java:438)
         at com.sun.corba.se.internal.iiop.ReaderThread.run(ReaderThread.java:70)
    ): Interner Fehler org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 208 completed: Maybe
    [2012/6/12 11:1:58:807] Info 56029 (EngineManager:shutdownEngine): Shutting down engine rwEng-0
    It turns out that for HTTP-Post not the same URL as for HTTP-GET can be used.
    In contrary to GET in case of POST the cgi-cmdkey must be passed in the additional paramter "hidden_run_parameters" to make the HTTP-POST to the cgicmd-key work:
    hidden_run_parameters=your_cgicmdkey
    It is not needed as the "first paramter" in the URL anymore. Perhaps that is due the fact, that there is no specific order on post parameters (is this true?, sounds correct ;-)
    However, i still have the feeling that this is a kind of undocumented hack, as since now, i didnt find any documentation on this.
    Has anyone had any expirences with this?
    Regards
    chris

  • HTTPS Post with XI

    Hi mates,
    I've a scenario that complains a RFC call to XI and then, XI makes a HTTPS Post on a specific server.
    I've created a HTTP Destination (type G) on SM59, set it to use SSL at Logon & Security tab, using the DFAULT ssl client(that i've created at STRUST transaction).
    The problem is when i try to TEST the connection, an successful textless message appears in the bottom and nothing happens! The server that will receive the request doesn't receive nothing when it occurs.
    I've debugged the testbutton of SM59 and i found that the problem occurs in cl_http_client, in the method IF_HTTP_CLIENT~RECEIVE, and the exception is http_communication_failure.
    Somebody faced the same problem?
    Is the Destinations created on the J2EE Admin Service avaliable to my XI Communication Channel?
    Thanks in advance.

    Hi Bruno,
    Try using the SOAP adapater instead of the plain HTTP way.
    These links might help:
    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
    Coe

  • HTTP Post Outbound scenario - Error 110 - Timeouts in SMICM Tracefile

    HI There
    We have a scenario where we do a HTTP post using the HTTP Plain Adapter to a SMS service provider from a message received from a BW system via RFC, It works perfectly in our development system but we cannot get it working in our production system
    In SXI_MONITOR the message fails with the error
      <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    - <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
      <SAP:Category>XIAdapter</SAP:Category>
      <SAP:Code area="PLAINHTTP_ADAPTER">ATTRIBUTE_CLIENT</SAP:Code>
      <SAP:P1>110</SAP:P1>
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:ApplicationFaultMessage namespace="" />
      <SAP:Stack>HTTP client code 110 reason</SAP:Stack>
      <SAP:Retry>A</SAP:Retry>
      </SAP:Error>
    Running a trace in SMICM shows the following in the tracelog
    [Thr 4632] IcmConnRollInWP: no need to roll in WP status: ROLLED IN
    [Thr 4632] IcmReadFromConn(id=9/140033): request new MPI (0/0)
    [Thr 4632] MPI<3018f>19#4 GetOutbuf -1 cb2250 65536 (0) -> 0DE122B0 0
    [Thr 4632] NiIRead: hdl 43 recv would block (errno=EAGAIN)
    [Thr 4632] NiIPeek: peek for hdl 43 timed out (r; 500ms)
    [Thr 4632] NiIRead: raw read for hdl 43 timed out (500ms)
    [Thr 4632] IcmReadFromConn: read failed with timeout: 500 -> roll out
    [Thr 4632] MPI<3018f>19#5 WriteOOB 00000000 02000000 09000000 01
    [Thr 4632] MPI<30190>15#11 ReadOOB 01000000 01000000 2D000000 00 -> 0
    [Thr 4632] IcmHandleOOBData: Received data on 1st MPI (seqno: 1, type=1, reason=1): 45/14512/0
    [Thr 4632] MPI<3018f>19#10 ReadOOB 01000000 01000000 2D000000 00 -> 0
    [Thr 4632] IcmHandleOOBData: Received data on 2nd MPI (seqno: 1, type=1, reason=1): 45/14512/0
    [Thr 4632] IcmHandleOOBData: Received context key (type=1, reason=1): 45/14512/0
    [Thr 4632] NiWakeupExec: send wakeup signal to 64997 (sock 16992)
    [Thr 4632] IcmConnRollOut: connection (id=9/140033) rolled out:
    [Thr 4632] CONNECTION (id=9/140033):
        used: 1, type: 1, role: 2, stateful: 0
        NI_HDL: 43, protocol: HTTP(1)
        local host:  200.1.1.100:3405 ()
        remote host: 196.30.220.242:80 ()
        status: READ_RESPONSE
        connect time: 23.07.2008 07:13:10
        WP-status: ROLLED OUT (Context: 9, Role: 2)
                  tid: 45, mode: 0, uid: 14512, roll-reason: ICM_ROLL_NETTIMEOUT
    With the following 2 lines ir differs from our development system  - this is the point where it goes wrong
    [Thr 4632] NiIRead: raw read for hdl 43 timed out (500ms)
    [Thr 4632] IcmReadFromConn: read failed with timeout: 500 -> roll out
    We have already checked the following between the 2 systems
    1. Configuration in Netweaver Administrator is Consistent
    2. Communication channel and Mapping is consistent
    3. Profile parameters for ICM are consistent
    Any ideas as to what this problem could be
    Many Thanks

    Hi
    after you download the html client.
    go to view -> source
    and enter the present xiusername & pwd which you using and save.
    Enter the below details in http client.
    Servername : XIServername
    Port : 80<instancenumber>
    Client : XI server client number
    Server : Sender service (business service or busienss system or integration process...when it comes to the HTTP adapter you need to create the business service that business service name you need to enter )
    Interface name : outbound interface name
    namespace : name for interface.
    If you doing Party scenario enter the Party, Agency and Schema details also else optional.
    Enter the Input xml data while enter the input data remove the first xml version line and paste the other data.
    click on send message.
    check the exchange profile set the httpport or not
    check these links
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/66dadc6e-0a01-0010-9ea9-bb6d8ca48cc8
    The specified item was not found.
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/xi/http%2bto%2brfc%2bsynchronous%2bscenario%2b-%2bfaqs
    HTTP to RFC - A Starter Kit
    /people/r.eijpe/blog/2006/02/19/xml-dom-processing-in-abap-part-iiia150-xml-dom-within-sap-xi-abap-mapping
    Regards,
    Suryanarayana

  • HTTP POST Request with XML file in

    Hi @ all,
    I would like to send an HTTP Request with an XML File in the body to an SAP System
    I have the target URL and the a XML File.
    Now the question is. Is it possible to use something like the HTTP_POST FuBa to send an url post request with an xml file?
    If yes can anybody give me a hint?
    I have a php script which exactly do this coding. But to integrate it all in one system it is necessary to transform it into ABAP and call it there.
    // compose url and request and call send function
    function test($productID, $categoryID) {
         // create url
         $PIhost = "XXX.wdf.sap.corp";
         $PIport = "50080";
         $PIurl = "/sap/xi/adapter_plain";
         $PIurl .= "?sap-client=800";
         $PIurl .= "&service=XXX";
         $PIurl .= "&namespace=XXX";
         $PIurl .= "&interface=Frontend_Interface";
         $PIurl .= "&qos=EO";
         $PIurl .= "&sap-user=XXX";
         $PIurl .= "&sap-password=XXX";
         // create xml
         $request = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
         $request .="<n1:FrontendInbound_MessageType xmlns:n1=\"http://crmpiebay.com\">\n";
         $request .= "\t<FrontendInbound>\n";
         $request .= "\t\t<ProductName/>\n";
         $request .= "\t\t<ProductCategory>".$categoryID."</ProductCategory>\n";
         $request .= "\t\t<ProductID>".$productID."</ProductID>\n";
         $request .= "\t\t<MessageID/>\n";
         $request .= "\t</FrontendInbound>\n";
         $request .= "</n1:FrontendInbound_MessageType>";
         // send http request
         postToHost($PIhost, $PIport, $PIurl, $_SERVER["SERVER_NAME"].":".$_SERVER["SERVER_PORT"]."/".$_SERVER["PHP_SELF"], $request);
    // send post request to PI server
    function postToHost($host, $port, $path, $referer, $data_to_send) {
      $fp = fsockopen($host, $port);
      if($fp) {
           $res="";
           fputs($fp, "POST $path HTTP/1.1\r\n");
           fputs($fp, "Host: $host\r\n");
           fputs($fp, "Referer: $referer\r\n");
           fputs($fp, "Content-type: text/plain\r\n");
           fputs($fp, "Content-length: ". strlen($data_to_send) ."\r\n");
           fputs($fp, "Connection: close\r\n\r\n");
           fputs($fp, $data_to_send);
           while(!feof($fp)) {
               $res .= fgets($fp, 128);
           fclose($fp);
           return $res;
    Would be great if anybody could give me a hint how to solve such a HTTP Post request with XML body data.
    Thanks in advance.
    Chris
    Edited by: Christian Kuehne on Feb 26, 2009 4:32 PM

    hi friend could you please share your solution regarding this query if u got it already?

  • Applicatio​n using Http Post... getting error response

    Im from Ecuador, and me and other 4 people from the same country are getting this error response when a native java application is trying to make a http post to mydomain.com
    The requested URL could not be retrieved:
    While trying to process the request:
    POST /somedir/more?var1=abc&var2=xyz& HTTP/1.1
    Expect: 100-continue
    Host: mydomain.com
    Content-Length: 40
    Content-Type: text/plain; charset=utf-8
    Accept: */*
    Connection: close
    Invalid request. Some aspect of the HTTP Request is nivalid. Possible problems:
    Missing or unknwon request method
    Missing URL
    Missing HTTP Identifier (HTTP/1.0)
    Request is too large
    Content-Length missing for POST or PUT request
    Generated by Blackberry.Internet.Browsing.Service (squd/2.7.STABLE6)
    This issue is only happening in my country (Ecuador). I have some friends in Argentina and they have no problems at all. What are the posible causes for this problem?
    Message Edited by andufo on 07-09-2009 08:43 PM

    Hi again,
    im attaching all the info you request:
    What does the program actually do?
    Social network (because of the TOS of this forum im not allowed to post project names or urls)
    What is it trying to send when you submit a request?
    What url is it posting the information to? 
    Im attaching all this at the end of the post.
    Is it the 'exact' same application that works in other countries?
    Yeap, the exact same one...
    Is it supposed to be useing the Internet Browser?
    No, it is a native app. The Browser is not used at all.
    Are you on a BlackBerry Enterprise Server? 
    Im on BIS, all the users use BIS.
    Technical details:
    1) The app makes an Http Connection (POST) to:
    http://mydomain.com/api/call?param1=abc&param2=xyz
    2) This is the Http connection configuration:
    httpConnection = (HttpConnection) Connector.open(url);
    HttpConnection.POST;
    ("Content-Type", "text/plain; charset=utf-8");
    ("Host", 'mydomain.com');
    ("Content-Length", 100); //depends on sent data
    ("User-Agent", 'BlackBerry8300... etc');
    ("Expect", "100-continue");
    3) On every country it works fine... on my country i get this error:
    The requested URL could not be retrieved while trying to process the request:
    POST /app/llamada?param1=abc&param2=xyz& HTTP/1.1
    - Expect: 100-continue
    - Host: mydomain.com
    - Content-Length: 100
    - Content-Type: text/plain; charset=utf-8
    - Accept: */*
    - Connection: close
    Invalid request. Some aspect of the HTTP Request is invalid. Possible problems:
    - Missing or unknwon request method
    - Missing URL
    - Missing HTTP Identifier (HTTP/1.0)
    - Request is too large
    - Content-Length missing for POST or PUT request
    Generated by Blackberry.Internet.Browsing.Service (squid/2.7.STABLE6)

  • One  last try... emulating HTTP POST with applet

    I am trying emulate the HTTP POST method for file uploading using an applet. More specifically, I am trying to upload raw data to a PHP script by making the PHP script think it is receiving a file when in reality all it is receiving is a series of headers, some other necessary info, the data, and a closer. The PHP is then supposed to save the data into a file.
    I have looked at eight or ten threads, explanations, and sample code in this and other forums that deal with this exact same thing, some even specific to PHP, read various documents on and explanations of HTTP headers and so forth, corrected every code error and possible code error I could find, and tried a gazillion variations, but still can't get the PHP script to think that it is receiving a file.
    As far as I can tell, communication with the server is being established, the server is receiving info and sending responses back, the PHP script is defrinitely being activated to do its thing, but the PHP is not recognizing anything that looks like a file or even a file name to it.
    The following information may be relevant:
    The PHP works perfectly with real files uploaded from real HTML pages.
    The server uses Apache.
    The server has no Java support (shouldn't matter, but otherwise I would be using servlets at that end instead of PHP).
    the applet is in a signed jar, and is trying to store information in the same directory that it came from.
    I am using the Firefox browser (shouldn't matter?) .
    I am hoping that someone knowegeable about this can look at the code below and point our any errors. I've also included the response I get from the server, and the PHP code. If there are no obvious errors, can you think of anything else tthat might be going wrong besides the code itsef?
    Please don't suggest I try alternate means of doing this or grab some working code from somewhere. I may very well wind up doing that, but I'm a stubborn bastard and want to find out what the #^%R$($ is going wrong here!!!
    Here is the latest incarnation of the applet code: All it does is immediately try to send some text to the PHP script in such a way that the script thinks it is uploading text within a file. it also displays the responses it gets from the server, including what the PHP script sends back.
    import java.applet.Applet;
    import java.awt.*;
    import java.awt.event.*;
    import java.io.*;
    import java.net.*;
    public class test1 extends Applet{
    DataOutputStream osToServer;
    DataInputStream isFromServer;
    HttpURLConnection uc;
    String content = "This is a test upload";
    public void init(){
    try
    URL url = new URL( "http://www.mywebpage.com/handleapplet.php" );
    uc = (HttpURLConnection)url.openConnection();
    uc.setRequestMethod("POST");
    uc.setDoOutput(true);
    uc.setDoInput(true);
    uc.setUseCaches(false);
    uc.setAllowUserInteraction(false);
    uc.setRequestProperty("Connection", "Keep-Alive");
    //uc.setRequestProperty("HTTP_REFERER", "http://applet.getcodebase");
    uc.setRequestProperty("Content-Type","multipart/form-data; boundary=7d1234cf4353");
    uc.setRequestProperty( "Content-length", ( Integer.toString( content.length() ) ) );
    osToServer = new DataOutputStream(uc.getOutputStream());
    isFromServer = new DataInputStream(uc.getInputStream());
    catch(IOException e)
    System.out.println ("Error etc. etc.");
    return;
    try{
    osToServer.writeBytes("------------------------7d1234cf4353\r\nContent-Disposition: form-data; name=\"testfile\"; filename=\"C:testfile.txt\"\r\nContent-Type: text/plain\r\n\r\n");
    osToServer.writeBytes(content);
    osToServer.writeBytes("\r\n------------------------7d1234cf4353--\r\n");
    osToServer.flush();
    osToServer.close();
    catch (Exception e) {
    System.out.println(e);
    System.out.println("did not sucessfully connect or write to server");
    System.exit(0);
    }//end catch
    try{
    String fieldName="",fieldValue="";
    for ( int i=0; i<15; i++ )
    fieldName = uc.getHeaderFieldKey(i);
    System.out.print (" " + fieldName +": ");
    fieldValue = uc.getHeaderField(fieldName);
    System.out.println (fieldValue);
    }catch(Exception e){
    System.out.println ("Didn't get any headers");
         try{        
    String sIn = isFromServer.readLine();
                        for ( int j=0; j<20; j++ )
                             if(sIn!=null)
    System.out.println(sIn);
                             sIn = isFromServer.readLine();
    isFromServer.close();
    }catch(Exception e){
              e.printStackTrace();
    }//end AudioUp.java
    Here's the response I get back from the server:
    null: HTTP/1.1 200 OK
    Date: Sun, 03 Apr 2005 18:40:04 GMT
    Server: Apache
    Connection: close
    Transfer-Encoding: chunked
    Content-Type: text/html
    null: HTTP/1.1 200 OK
    null: HTTP/1.1 200 OK
    null: HTTP/1.1 200 OK
    null: HTTP/1.1 200 OK
    null: HTTP/1.1 200 OK
    null: HTTP/1.1 200 OK
    null: HTTP/1.1 200 OK
    null: HTTP/1.1 200 OK
    null: HTTP/1.1 200 OK
    <html>
    <head>
    <title>Handling uploaded files from an applet, etc.</title>
    </head>
    <body>
    No file was uploaded.
    </body>
    </html>
    The <html> and the "No file uploaded" message is simply what the PHP script sends back when it does not detect any uploaded file.
    Here is the PHP code on the server:
    <html>
    <head>
    <title>Handling uploaded files from an applet, etc.</title>
    </head>
    <body>
    <?php
    if ($testfile)
    print "The temporary name of the test file is: $testfile<br />";
    $uplfile=$testfile_name;
    $uplfile=trim($uplfile);
    print "The filename is: $uplfile<br />";
    if ($uplfile)
    copy ($testfile, "$testfile_name");
    unlink ($testfile);
    }else{
    print "No file was uploaded.";
    ?>
    </body>
    </html>

    xyz's sample code didn't work - PHP doesn't like the getallheaders line at all. I'm going back to the manual now.
    I had another thought. When I first started using PHP, I had problems with ordinary text field uploads from web pages because somewhere in the process, extra blank lines or spurious carriage returns were being inserted into the strings. For example, if I had a place where people could enter their name, password, and brief message, and tried to store the incoming strings in an array, I'd wind up with some thing like:
    name
    password
    brief message
    instead of:
    name
    password
    brief message
    Which played havoc when trying to read out information by counting lines.
    Anyway, the problem was solved by using the trim($string) function on all incoming strings, which I now do as a matter of course. I never could figure out why it was happening though.
    Do you think something like that could be happening here?? I mean, if spurious blank lines or carriage returns were being inserted where they shouldn't be, could that be screwing things up in this way? HTTP seems to insist on having new lines and blank lines inserted in just the right places.

  • Where does firefox cache the form parameters to be used in the reload event of a page that was the resposne of a HTTP POST request?

    Suppose there is form in a web page and it submits data in HTTP POST method. After submitting the form, if I reload the page [either by the refresh button or back button; whichever applicable], firefox asks permission to resend the form data by saying "To display this page, Firefox must send information that will repeat any action...". Now if the user clicks on the resend, firefox resubmits the form data.
    So where does firefox store this from data for such future resending/resubmission?
    Is it possible to retrieve/manipulate those stored form data?

    I thought I'd tried that, as tried lots of other things like encoding URL, but obviously not as this works.
    Thanks for the quick reply.
    We also have an issue with the people results not being able to be refined by Department or Job Title now we have connected the SP2010 farm to use the service applications from a SP2013 farm.
    Any ideas on this?  I've started a new thread as its unrelated though:
    http://social.technet.microsoft.com/Forums/sharepoint/en-US/c89d5463-4531-4a28-9586-1f690c7b580d/can-you-refine-people-search-results-using-a-sharepoint-2013-search-service-application-connected-in?forum=sharepointsearch

  • File upload using http-post in OSB

    Hi All,
    I am trying to upload a file using http-post method in OSB.
    I have created a business service pointing to the service url, with http method post.
    and calling this business service from a proxy service.
    I am unable to send the form data to the business service.
    Please let me know how to send trhe form data and the file information.
    The error given by Business Service is-
    the request doesn't contain a multipart/form-data or multipart/mixed stream, content type header is text/plain
    Thanks in advance.
    Seemant
    Edited by: Seemant Srivastava on Oct 12, 2010 12:28 PM

    Hi Anuj,
    A sample HTML form code for. Post HTTP service-
    <html>
    <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>CSV File</title>
    </head>
    <body>
    <form method="post" enctype="multipart/form-data" action="http://xyz/UploadFile">
    <table>
    <tr>
    <td> Feed id </td>
    <td><input type="text" name="refid" value="" size="20"></td>
    </tr>
    <tr>
    <td> Username (optional)</td>
    <td><input type="text" name="username" value="" size="20"></td>
    </tr>
    <tr>
    <td> Password (optional)</td>
    <td><input type="password" name="password" value="" size="20"></td>
    </tr>
    <tr><td> Select CSV File </td>
    <td> <input type="file" name="upload" value="" width="30"/></td>
    </tr>
    <tr>
    <td><input type="submit" name="Ok" value="Go"> <input type="reset" name="reset" value="Reset"> </td>
    </tr>
    </table>
    </form>
    </body>
    </html>
    I need to pass all these information to OSB business service.

  • Uploading big files via http post to XDB table

    Hello,
    I ve created a web form for to upload files as blobs to the database using XML DB, DBPS_EPG package and preconfigured DAD.
    The issue is that small files (~10kb) are being uploaded ok, but file which is 100K during http post returns connection reset from the server side.
    To my opinion there might be some max file size parameter for oracle server to accept during oracle listener tcp connection (as apach has maxrequestlimit).
    Is there any workaround for to load large files to the XDB table via webform?
    Here is a piece of code:
    CREATE USER web IDENTIFIED BY web_upload;
    ALTER USER web DEFAULT TABLESPACE XML_DATA;
    ALTER USER web QUOTA UNLIMITED ON XML_DATA;
    ALTER USER web TEMPORARY TABLESPACE TEMP;
    GRANT CONNECT, ALTER SESSION TO web;
    GRANT CREATE TABLE, CREATE PROCEDURE TO web;
    ALTER SESSION SET CURRENT_SCHEMA = XDB;
    BEGIN DBMS_EPG.CREATE_DAD('WEB', '/upload/*'); END;
    BEGIN
        DBMS_EPG.SET_DAD_ATTRIBUTE('WEB', 'database-username', 'WEB');
        DBMS_EPG.SET_DAD_ATTRIBUTE('WEB', 'document-table-name', 'uploads');
        DBMS_EPG.SET_DAD_ATTRIBUTE('WEB', 'nls-language', '.al32utf8');
        DBMS_EPG.SET_DAD_ATTRIBUTE('WEB', 'default-page', 'upload');
        COMMIT;
    END; 
    ALTER SESSION SET CURRENT_SCHEMA = SYS;
    CREATE TABLE web.uploads (
        name VARCHAR2(256) NOT NULL
            CONSTRAINT pk_uploads PRIMARY KEY,
        mime_type VARCHAR2(128),
        doc_size NUMBER,
        dad_charset VARCHAR2(128),
        last_updated DATE,
        content_type VARCHAR2(128) DEFAULT 'BLOB',
        blob_content BLOB
    CREATE OR REPLACE PROCEDURE web.upload
    AS
      url VARCHAR2(256) := 'http://demo.test.com:9090/upload/uploaded';
    BEGIN
        HTP.P('<html>');
        HTP.P('<head>');
        HTP.P('  <title>Upload</title>');
        HTP.P('</head>');
        HTP.P('<body>');
        HTP.P('  <h1>Upload</h1>');
        HTP.P('  <form method="post"');
        HTP.P('      action="' || url || '"');
        HTP.P('      enctype="multipart/form-data">');
        HTP.P('    <p><input type="file" name="binaryfile" /></p>');
        HTP.P('    <p><input type="file" name="binaryfile" /></p>');
        HTP.P('    <p><button type="submit">Upload</button></p>');
        HTP.P('  </form>');
        HTP.P('</body>');
        HTP.P('</html>');
    END;
    CREATE OR REPLACE PROCEDURE web.uploaded (
        binaryfile OWA.VC_ARR
    AS
    BEGIN
        HTP.P('<html>');
        HTP.P('<head>');
        HTP.P('  <title>Uploaded</title>');
        HTP.P('</head>');
        HTP.P('<body>');
        HTP.P('  <h1>Uploaded</h1>');
        FOR i IN 1 .. binaryfile.COUNT LOOP
            IF binaryfile(i) IS NOT NULL THEN
                HTP.P('  <p>File: ' || binaryfile(i) || '</p>');
            END IF;
        END LOOP;
        HTP.P('</body>');
        HTP.P('</html>');
    END;
    /帖子经 anatoly编辑过

    Welcome to Apple Discussions!
    Much of what is available on Bittorrent is not legal, beta, or improperly labelled versions. If you want public domain software, see my FAQ*:
    http://www.macmaps.com/macosxnative.html#NATIVE
    for search engines of legitimate public domain sites.
    http://www.rbrowser.com/ has a light mode that supports binary without SSH security.
    http://rsug.itd.umich.edu/software/fugu/ has ssh secure FTP.
    Both I find are quick and a lot more reliable than Fetch. I know Fetch used to be the staple FTP program, but it grew too big for my use.
    - * Links to my pages may give me compensation.

  • Error while XI and xMII integration (Plain HTTP as sender)

    Dear Friends,
       I am doing the scenario XI and xMII integration. While sending the input file from plain HTTP adapter the result comes as follows in *sxmb_moni* :
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    <!-- Call Adapter -->
    <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
    <SAP:Category>XIAdapterFramework</SAP:Category>
    <SAP:Code area="MESSAGE">GENERAL</SAP:Code>
    <SAP:P1/>
    <SAP:P2/>
    <SAP:P3/>
    <SAP:P4/>
    <SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: <xMII server name></SAP:AdditionalText>
    <SAP:ApplicationFaultMessage namespace=""/>
    <SAP:Stack/>
    <SAP:Retry>M</SAP:Retry>
    </SAP:Error>
    In HTTP Client Adapter for XI 3.0 it is shown as follows:
    <SAP:Error><SAP:Category>XIAdapterFramework</SAP:Category><SAP:Code>MESSAGE.GENERAL
    </SAP:Code>
    <SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: <xMII server name> </SAP:AdditionalText></SAP:Error>
    Please show the way to rectify this error.
    Regards,
    Jagan.

    Dear Sudharshan,
       I'm doing the scenario which is in the following blog.
    /people/dhanabal.thangavel/blog/2008/02/07/xi-and-xmii-integration--part-1 ==> XI and xMII Integration - Part 1
    This is a synchronous one. So I set QOS as BE in Client Http Adapter for XI 3.0.
    Scenario is HTTP <--> XI <--> xMII
    The following errors are I found:
    1) In RWB -> Message Monitoring
    Status : Canceled with Errors
    Message Details:
    SOAP : call failed
    SOAP :error occured: java.net.UnknownHostException: <HOST>
    Exception caught by adapter framework: <HOST>
    Delivery of the message to the application using connection AFW failed, due to: <HOST>. Setting message to status failed
    The message status set to FAIL.
    Returning synchronous error message to calling application: <HOST>.
    2) Error coming in the Client Http Adapter for XI 3.0 as follows:
    *URL:*
    http://xxxxxx07:xx10/sap/xi/adapter_plain?namespace=http%3A//www.xxxxxxx.com/XIBatch3/10099/xMII_Integration&interface=xMII_Integration_Sync_Outbound&service=BS_BATCH3&party=&agency=&scheme=&QOS=BE&sap-user=xxxxx&sap-password=xxxxx&sap-client=xx1&sap-language=EN
    *Result:*
    <SAP:Error><SAP:Category>XIAdapterFramework</SAP:Category><SAP:Code>MESSAGE.GENERAL</SAP:Code><SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException:<HOST></SAP:AdditionalText></SAP:Error>
    *Input XML file:*
    <?xml version="1.0" encoding="UTF-8"?>
    <ns1:XacuteRequest xmlns:ns1="http://www.lighthammer.com/Xacute">
       <ns1:LoginName/>
       <ns1:LoginPassword/>
       <ns1:InputParams>
          <ns1:ProductName>ProductA1</ns1:ProductName>
       </ns1:InputParams>
    </ns1:XacuteRequest>
    *WSDL file (Which is generated using the xMII transaction):*
    <?xml version="1.0" encoding="UTF-8"?><definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://www.lighthammer.com/Xacute" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.lighthammer.com/Xacute">
        <!-- Types -->
        <types>
            <s:schema elementFormDefault="qualified" targetNamespace="http://www.lighthammer.com/Xacute">
                <s:complexType name="InputParams">
                    <s:sequence id="InputSequence">
                    <s:element maxOccurs="1" minOccurs="0" name="ProductName" type="s:string"/></s:sequence>
                </s:complexType>
                <s:element name="XacuteRequest">
                    <s:complexType>
                        <s:sequence>
                            <s:element maxOccurs="1" minOccurs="0" name="LoginName" type="s:string"/>
                            <s:element maxOccurs="1" minOccurs="0" name="LoginPassword" type="s:string"/>
                            <s:element maxOccurs="1" minOccurs="0" name="InputParams" type="s0:InputParams"/>
                        </s:sequence>
                    </s:complexType>
                </s:element>
                <s:complexType name="Rowsets">
                    <s:sequence>
                        <s:element maxOccurs="1" minOccurs="0" name="FatalError" type="s:string"/>
                        <s:element maxOccurs="1" minOccurs="0" name="Messages" type="s0:Messages"/>
                        <s:element maxOccurs="1" minOccurs="0" name="Rowset" type="s0:Rowset"/>
                    </s:sequence>
                    <s:attribute name="StartDate" type="s:dateTime" use="required"/>
                    <s:attribute name="EndDate" type="s:dateTime" use="required"/>
                    <s:attribute name="DateCreated" type="s:dateTime" use="required"/>
                    <s:attribute name="Version" type="s:string"/>
                </s:complexType>
                <s:complexType name="Messages">
                    <s:sequence>
                        <s:element maxOccurs="unbounded" minOccurs="0" name="Message" type="s:string"/>
                    </s:sequence>
                </s:complexType>
                <s:complexType name="Columns">
                    <s:sequence>
                        <s:element maxOccurs="unbounded" minOccurs="0" name="Column" type="s0:Column"/>
                    </s:sequence>
                </s:complexType>
                <s:complexType name="Column">
                    <s:attribute name="Name" type="s:string" use="required"/>
                    <s:attribute name="Description" type="s:string" use="required"/>
                    <s:attribute name="SourceColumn" type="s:string" use="required"/>
                    <s:attribute name="MinRange" type="s:double" use="required"/>
                    <s:attribute name="MaxRange" type="s:double" use="required"/>
                    <s:attribute name="SQLDataType" type="s:int" use="required"/>
                </s:complexType>
                <s:complexType name="Rowset">
                    <s:sequence>
                        <s:element maxOccurs="1" minOccurs="1" name="Columns" type="s0:Columns"/>
                        <s:element maxOccurs="unbounded" minOccurs="0" name="Row" type="s0:Row"/>
                    </s:sequence>
                </s:complexType>
                <s:complexType name="Row">
                    <s:sequence id="RowSequence">
                    <s:element maxOccurs="1" minOccurs="1" name="Quantity" type="s:long"/><s:element maxOccurs="1" minOccurs="1" name="ProductName" type="s:string"/></s:sequence>
                </s:complexType>
                <s:element name="XacuteResponse">
                    <s:complexType>
                        <s:sequence>
                            <s:element maxOccurs="1" minOccurs="0" name="Rowsets" type="s0:Rowsets"/>
                        </s:sequence>
                    </s:complexType>
                </s:element>
            </s:schema>
        </types>
        <!-- Messages -->
        <message name="XacuteSoapIn">
            <part element="s0:XacuteRequest" name="parameters"/>
        </message>
        <message name="XacuteSoapOut">
            <part element="s0:XacuteResponse" name="parameters"/>
        </message>
        <!-- Ports -->
        <portType name="XacuteWSSoap">
            <operation name="Xacute">
                <input message="s0:XacuteSoapIn"/>
                <output message="s0:XacuteSoapOut"/>
            </operation>
        </portType>
        <!-- Bindings -->
        <binding name="XacuteWSSoap" type="s0:XacuteWSSoap">
            <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
            <operation name="Xacute">
                <soap:operation soapAction="http://www.lighthammer.com/Xacute" style="document"/>
                <input>
                    <soap:body use="literal"/>
                </input>
                <output>
                    <soap:body use="literal"/>
                </output>
            </operation>
        </binding>
        <!-- Service mapping -->
        <service name="XacuteWS">
            <port binding="s0:XacuteWSSoap" name="XacuteWSSoap">
                <soap:address location="http://<XMII_SERVER_NAME>/Lighthammer/SOAPRunner/Jagan/SDN_Fetch_Product_Qty"/>
            </port>
        </service>
    </definitions>
    Regards,
    Jagan.

  • Configure plain http adapter for receiving message from an external system

    Hi,
    we use Pi/700.
    Now I have an external system and I have to use HTTP (plain) to send messages to XI (via plain http adapter).
    I have no experiences with HTTP!
    In the external system I can only configure "URL, Username, Password" for sending messages - that's all!
    What do I have to configure in XI (communication channel, abap-stack, java-stack,...)?
    I don't know the URL of my XI-system. Is there an transaction code to get this information?
    Why do I need a Username/Pasword?
    For testing I can use a "http-post test tool" I found here in this forum.
    Thank you all for any help!
    Regards
    Wolfgang

    Hi Hummel,
    In Exteranl System u have to use these values
    name="myhost"      value="xiserver"
    name="myport"      value="8000"
    name="mysystem"    value="XY_BSservice"
    name="myinterface" value="Order_out"
    name="mynamespace" value="urn:xi:hcl:powebapp"
    name="myqos"       value="BE"
    name="myclient"    value="300"
    name="myuser"      value="XYZCLNT"
    name="mypass"      value="xiuser"
    Here My system is the Business service created in Integration directory of XI, Interface is the one created in Integration Repository (This is Outbaound from external sys to XI)
    In XI U have to create
    Data Types : 1) Source Structure data type(from extenal sys)
                 2) Target structure (where u want to send from XI)
    Message Types : 2 with above DT's
    Message Interface: 1) Outbound, Async (Order_out)
                       2) Inbound , Async (for the target sys)
    Then Message mapping and Interface mapping as usual..
    And in ID u have to create 2 services one is XY_BSservice for sending system and the other is for receiving system...
    For sending system no communication channel required...
    Hope u will get idea from the above..
    Need any further u r welcome..
    Regards
    Sridhar

  • How to send HTTP Post to URL (third party software) in JSP/JSPDynpage

    Hello,
    we want to integrate a third party application in our Portal Component (JSPDynpage using JSP and HTMLB). This third party component is called like this:
    http://servername:port/cgi-bin/cgi.exe?request=map&format=html&swldy_ace=GDF&swldy_image_format=p n g&width=525&height=375
    How can we do this in the JSP using HTMLB?
    Thanks for your help.
    Best regards,
    Daniel

    Hi Detlev,
    thanks for your hint regarding the App. Integrator, but it seemn not to be what we want to do: We call a CGI and get a JEPG Image back as request.
    Now we used the java.net.URLConnection to do the HTTP post in the JSPDynpage:
    // send HTTP POST
    try {
      u = new URL("http://server/path/ourcgi.exe");
    } catch(MalformedURLException ex) {
      System.err.println("MalformedURLException");
    // build query sting      
    String query = "request=plot&format=jpeg&template_name=......."
    int cl = query.length();
    try {
      // open the connection and prepare it to POST
      URLConnection uc = u.openConnection();
      uc.setDoOutput(true);
      uc.setDoInput(true);
      uc.setAllowUserInteraction(false);
      DataOutputStream dos = new DataOutputStream(uc.getOutputStream());
      dos.writeBytes(query);
      dos.close();
    } catch ...
    Best regards,
    Daniel

Maybe you are looking for