Sending Cookies in HTTP request

Hi All,
How can i send a Cookie in HTTP request.
I have tried methods "addRequestProperty" & "setRequestProperty"
URL url = new URL("http://hostname.domain");
HttpURLConnection conn = (HttpURLConnection)url.openConnection();
//tried in the following ways
conn.setRequestProperty("Cookie","action=case4");
conn.setRequestProperty("Cookie:","action=case4");
conn.addRequestProperty("Cookie","action=case4");
conn.addRequestProperty("Cookie:","action=case4");
Cookie header is not present when the request headers are read in the Servlet.
Thanks in Advance,
Labora.

Hi Miciuli,
Thanks for the response. I am developing a HTTP client in which i need to store the cookies from the response & send it back to the Origin server for the subsequent request. In this scenario, i have to send the Cookies in the HTTP request.
Thanks,
Labora.

Similar Messages

  • Add cookie to HTTP request header when calling web service

    I'm trying to call web service using JDeveloper 11g. I successfully generated web service proxy from WSDL document. I can successfully call this particular web service's method "login" which returns "session_id", which then needs to be inserted as a cookie in the HTTP request header in later calls to other methods. This is how the HTTP request header should look like:
    POST /webservice HTTP/1.1
    Host: registrar.carnet.hr
    Connection: Keep-Alive
    User-Agent: .hr domene
    Content-Type: text/xml; charset=utf-8
    SOAPAction: "https://registrar.carnet.hr/webservice#get_domain_name"
    Content-Length: 532
    Cookie: session_id=f3po0ba01a47gd64792151ee43a25765;
    How can this be accomplished? There is not much code that I wrote, everything is generated by JDeveloper's wizard...
    public static void main(String[] args) {
    try {
    RegistrarServicePortPortClient client =
    new RegistrarServicePortPortClient();
    client.setPortCredentialProviderList();
    // add your code here
    String login;
    login = client.login("username", "password");
    System.out.println(login);
    String myCookie = "session_id="+login;
    System.out.println(myCookie);
    *// what can be done to add myCookie to the HTTP request header?*
    } catch (Exception ex) {
    ex.printStackTrace();
    Thanks in advance,
    Bruno

    Hi Vishal,
    it's not a requirement but I wasn't able to create JAX-WS Style proxy from this WSDL: https://registrar.carnet.hr/wsdl
    The exception I'm getting is:
    oracle.jdeveloper.webservices.model.WebServiceException: Error creating model from wsdl "https://registrar.carnet.hr/wsdl": Could not bind "{http://schemas.xmlsoap.org/soap/encoding/}Array" in message part "return" to a Java type. If doc/lit style is used then message part should reference to global schema element.
         at oracle.jdeveloper.webservices.model.java.JavaWebService.createPortTypes(JavaWebService.java:1635)
         at oracle.jdeveloper.webservices.model.WebService.createServiceFromWSDL(WebService.java:2846)
         at oracle.jdeveloper.webservices.model.WebService.createServiceFromWSDL(WebService.java:2611)
         at oracle.jdeveloper.webservices.model.java.JavaWebService.<init>(JavaWebService.java:509)
         at oracle.jdeveloper.webservices.model.java.JavaWebService.<init>(JavaWebService.java:461)
         at oracle.jdeveloper.webservices.model.proxy.WebServiceProxy$ProxyJavaWebService.<init>(WebServiceProxy.java:2268)
         at oracle.jdeveloper.webservices.model.proxy.WebServiceProxy.updateServiceModel(WebServiceProxy.java:1701)
         at oracle.jdeveloper.webservices.model.proxy.WebServiceProxy.setDescription(WebServiceProxy.java:525)
         at oracle.jdevimpl.webservices.wizard.jaxrpc.proxy.ProxyJaxWsSpecifyWSDLPanel.setDescription(ProxyJaxWsSpecifyWSDLPanel.java:238)
         at oracle.jdevimpl.webservices.wizard.jaxrpc.common.SpecifyWsdlPanel.buildModel(SpecifyWsdlPanel.java:1109)
         at oracle.jdevimpl.webservices.wizard.jaxrpc.common.SpecifyWsdlPanel$5.run(SpecifyWsdlPanel.java:661)
         at oracle.ide.dialogs.ProgressBar.run(ProgressBar.java:655)
         at java.lang.Thread.run(Thread.java:619)
    Caused by: oracle.jdeveloper.webservices.tools.WsdlValidationException: Error creating model from wsdl "https://registrar.carnet.hr/wsdl": Could not bind "{http://schemas.xmlsoap.org/soap/encoding/}Array" in message part "return" to a Java type. If doc/lit style is used then message part should reference to global schema element.
         at oracle.jdevimpl.webservices.tools.wsa.WsaAdaptor.newWsdlValidationException(WsaAdaptor.java:825)
         at oracle.jdevimpl.webservices.tools.wsa.WsaAdaptor.getSeiInfo(WsaAdaptor.java:515)
         at oracle.jdeveloper.webservices.tools.WebServiceTools.getSeiInfo(WebServiceTools.java:523)
         at oracle.jdeveloper.webservices.model.java.JavaWebService.getSeiInfo(JavaWebService.java:1741)
         at oracle.jdeveloper.webservices.model.java.JavaWebService.createPortTypes(JavaWebService.java:1496)
         ... 12 more
    Caused by: oracle.j2ee.ws.common.tools.api.ValidationException: Error creating model from wsdl "https://registrar.carnet.hr/wsdl": Could not bind "{http://schemas.xmlsoap.org/soap/encoding/}Array" in message part "return" to a Java type. If doc/lit style is used then message part should reference to global schema element.
         at oracle.j2ee.ws.tools.wsa.jaxws.JaxwsWsdlToJavaTool.getJAXWSModel(JaxwsWsdlToJavaTool.java:664)
         at oracle.j2ee.ws.tools.wsa.WsdlToJavaTool.createJAXWSModel(WsdlToJavaTool.java:475)
         at oracle.j2ee.ws.tools.wsa.Util.getJaxWsSeiInfo(Util.java:1357)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at oracle.jdevimpl.webservices.tools.wsa.Assembler$2$1.invoke(Assembler.java:218)
         at $Proxy39.getJaxWsSeiInfo(Unknown Source)
         at oracle.jdevimpl.webservices.tools.wsa.WsaAdaptor.getSeiInfo(WsaAdaptor.java:505)
         ... 15 more
    Caused by: oracle.j2ee.ws.tools.jaxws.wsdl.ModelBuilderException: Could not bind "{http://schemas.xmlsoap.org/soap/encoding/}Array" in message part "return" to a Java type. If doc/lit style is used then message part should reference to global schema element.
         at oracle.j2ee.ws.tools.jaxws.wsdl.OperationMappingBuilder.getPartJavaType(OperationMappingBuilder.java:702)
         at oracle.j2ee.ws.tools.jaxws.wsdl.OperationMappingBuilder.createParameterMapping(OperationMappingBuilder.java:675)
         at oracle.j2ee.ws.tools.jaxws.wsdl.OperationMappingBuilder.createParameterMapping(OperationMappingBuilder.java:663)
         at oracle.j2ee.ws.tools.jaxws.wsdl.OperationMappingBuilder.buildBarePortTypeParameters(OperationMappingBuilder.java:490)
         at oracle.j2ee.ws.tools.jaxws.wsdl.OperationMappingBuilder.buildBarePortTypeOperation(OperationMappingBuilder.java:301)
         at oracle.j2ee.ws.tools.jaxws.wsdl.OperationMappingBuilder.buildPortTypeOperation(OperationMappingBuilder.java:216)
         at oracle.j2ee.ws.tools.jaxws.wsdl.OperationMappingBuilder.build(OperationMappingBuilder.java:93)
         at oracle.j2ee.ws.tools.jaxws.wsdl.WSDLToJavaModelBuilder.buildPortTypeOperations(WSDLToJavaModelBuilder.java:635)
         at oracle.j2ee.ws.tools.jaxws.wsdl.WSDLToJavaModelBuilder.buildSEI(WSDLToJavaModelBuilder.java:435)
         at oracle.j2ee.ws.tools.jaxws.wsdl.WSDLToJavaModelBuilder.buildSEI(WSDLToJavaModelBuilder.java:402)
         at oracle.j2ee.ws.tools.jaxws.wsdl.WSDLToJavaModelBuilder.buildPorts(WSDLToJavaModelBuilder.java:383)
         at oracle.j2ee.ws.tools.jaxws.wsdl.WSDLToJavaModelBuilder.buildService(WSDLToJavaModelBuilder.java:322)
         at oracle.j2ee.ws.tools.jaxws.wsdl.WSDLToJavaModelBuilder.buildServices(WSDLToJavaModelBuilder.java:299)
         at oracle.j2ee.ws.tools.jaxws.wsdl.WSDLToJavaModelBuilder.buildAll(WSDLToJavaModelBuilder.java:271)
         at oracle.j2ee.ws.tools.jaxws.wsdl.WSDLToJavaModelBuilder.build(WSDLToJavaModelBuilder.java:188)
         at oracle.j2ee.ws.tools.wsa.jaxws.JaxwsWsdlToJavaTool.getJAXWSModel(JaxwsWsdlToJavaTool.java:656)
         ... 24 more
    Caused by: oracle.j2ee.ws.common.databinding.tools.spi.SchemaFindException
         at oracle.j2ee.ws.common.tools.databinding.jaxb20.Jaxb20JavaDatabindingContext.getJavaTypeForSchemaType(Jaxb20JavaDatabindingContext.java:52)
         at oracle.j2ee.ws.tools.jaxws.wsdl.OperationMappingBuilder.getPartJavaType(OperationMappingBuilder.java:696)
         ... 39 more
    Thanks,
    Bruno

  • How to send PUT, DELETE HTTP request in HttpURLConnection ?

    Hi all.
    I want to know that is it possible to send PUT, DELETE request (practically) through java.net.httpURLConnection to http based URL. I have read so many articles describing that how to send GET, POST, TRACE, OPTIONS request but still not finding any sample code which successfully perform PUT and DELETE request. Can any one give idea regarding that?
    Thanks

    Help_Me_Solve wrote:
    Hi all.
    I want to know that is it possible to send PUT, DELETE request (practically) through java.net.httpURLConnection to http based URL. I have read so many articles describing that how to send GET, POST, TRACE, OPTIONS request but still not finding any sample code which successfully perform PUT and DELETE request. Can any one give idea regarding that?
    ThanksIt's technically possible I am sure but 100% impractical because almost nobody uses an HTTP server for that purpose. I don't know what HTTP servers actually implement PUT and DELETE but you can be sure even in those that do the behaviour is off by default.
    If you need to do PUT/DELETE sort of operations you should be using FTP.

  • OSB 11g - send cookes during HTTP redirects

    Hi everybody,
    I created the OSB business service BS1 to emulate HTTP POST request for the specific URL. The POST request to this URL returns:
    HTTP/1.1 302 Moved Temporarily
    Date: Tue, 03 Aug 2010 07:01:21 GMT
    Server: Apache
    P3P: CP="NOI DSP COR CURa ADMa TA1a OUR BUS IND UNI COM NAV INT"
    Set-Cookie: PAY2601224103933258050=PAYC7BBCCF4F4E67B7C729D9C1E93A8C236; Path=/; Secure
    Accept-Charset: iso-8859-1, unicode-1-1;q=0.8
    Expires: Sun, 15 Jul 1990 00:00:00 GMT
    Pragma: no-cache
    Cache-Control: no-cache
    Location: https://<HOST>y?o=pt&DOID=CBAB14334A616C13883CAE0787F14720&paymentId=2601224103933258050
    Content-Language: en
    Content-Length: 0
    Keep-Alive: timeout=120, max=100
    Connection: Keep-Alive
    Content-Type: text/html;charset=iso-8859-1
    To follow HTTP redirects I set the checkbox "Follow HTTP redirects" on the HTTP Transport tab of BS1. The problem is that during redirects OSB's HTTP transport does not resend cookies that server sent to the OSB (PAY2601224103933258050 in my case). This leads to the errors in the redirected page.
    The only workaround that I see is the following:
    1 - Disable "Follow HTTP redirects" checkbox for BS1
    2 - create Proxy service PS1 that will receive HTTP POST request
    3 - invoke BS1 from PS1 using service callout
    4 - analyze BS1 response metadata (http:Location and tran:user-header with "Set-Cookie" name)
    5 - invoke the URL found in http:Location with cookies returned in "Set-Cookie" (by the way, how this can be done in OSB?)
    Any ideas?

    >
    The problem is that during redirects OSB's HTTP transport does not resend cookies that server sent to the OSB (PAY2601224103933258050 in my case).
    >
    Have you checked if <HOST> (in Location:) matches the hostname in original request? I think cookies are related to hostname by default, so if the redirection goes for a different hostname, it is correct for OSB to omit the cookie.
    >
    5 - invoke the URL found in http:Location with cookies returned in "Set-Cookie" (by the way, how this can be done in OSB?)
    >
    You can use Routing Options for setting URL in runtime and Transport Headers for setting headers.

  • Embedded "multipart/encrypted" HTTP Request?

    Hi,
    I am using 'httpclient.jar'. I am able to successfully send a normal HTTPRequest and receive the response using the 'MultipartRequestEntity' class.
    Now, I need to send an Embedded HTTP Request as mentioned below. Kindly suggest how can I send an Embedded HTTPRequest and how do I set the 'RequestHeader' to change the 'Content Type' to "multipart/encrypted".
    POST /RecipientServer/mailbox HTTP/1.1
    Date: Tue, 20 Dec 2000 08:12:31 GMT
    Connection: Keep-Alive
    Host: www.ontarioRecipientServer.com
    Content-Language: en, fr
    Content-Type: multipart/form-data; boundary=EBTpart;
    Content-Length: 3222
    --EBTpart
    Content-Disposition: form-data; name=”sender”
    12345678
    --EBTpart
    Content-Disposition: form-data; name=”user_id”
    aUser
    --EBTpart
    Content-Disposition: form-data; name=”user_password”
    aPassword
    --EBTpart
    Content-Disposition: form-data; name=”request_type”
    Upload
    --EBTpart
    Content-Disposition: form-data; name=”ebt_document”; filename=”transaction.xml”
    Content-Type: application/octet-stream
    MIME-Version: 1.0
    Content-Type: multipart/encrypted; boundary=”=--”;
    protocol="application/pgp-encrypted"
    --=--
    Content-Type: pgp-encrypted
    Version: 1
    --=--
    Content-Type: application/octet-stream
    -----BEGIN PGP MESSAGE-----
    Version: 2.6.2
    hIwDY32hYGCE8MkBA/wOu7d45aUxF4Q0RKJprD3v5Z9K1YcRJ2fve87lMlDlx4OjeW4GDdBfLbJE7VUpp13N19GL8e/AqbyyjHH4aS0YoTk10QQ9nnRvjY8nZL3MPXSZg9VGQxFeGqzykzmykU6A26MSMexR4ApeeON6xzZWfo+0yOqAq6lb46wsvldZ96YA AABH78hyX7YX4uT1tNCWEIIBoqqvCeIMpp7UQ2IzBrXg6GtukS8NxbukLeamqVW31yt21DYOjuLzcMNe/JNsD9vDVCvOOG3OCi8=
    =zzaA
    -----END PGP MESSAGE-----
    --=----
    EBTpart

    Hi,
    I am using 'httpclient.jar'. I am able to successfully send a normal HTTPRequest and receive the response using the 'MultipartRequestEntity' class.
    Now, I need to send an Embedded HTTP Request as mentioned below. Kindly suggest how can I send an Embedded HTTPRequest and how do I set the 'RequestHeader' to change the 'Content Type' to "multipart/encrypted".
    POST /RecipientServer/mailbox HTTP/1.1
    Date: Tue, 20 Dec 2000 08:12:31 GMT
    Connection: Keep-Alive
    Host: www.ontarioRecipientServer.com
    Content-Language: en, fr
    Content-Type: multipart/form-data; boundary=EBTpart;
    Content-Length: 3222
    --EBTpart
    Content-Disposition: form-data; name=”sender”
    12345678
    --EBTpart
    Content-Disposition: form-data; name=”user_id”
    aUser
    --EBTpart
    Content-Disposition: form-data; name=”user_password”
    aPassword
    --EBTpart
    Content-Disposition: form-data; name=”request_type”
    Upload
    --EBTpart
    Content-Disposition: form-data; name=”ebt_document”; filename=”transaction.xml”
    Content-Type: application/octet-stream
    MIME-Version: 1.0
    Content-Type: multipart/encrypted; boundary=”=--”;
    protocol="application/pgp-encrypted"
    --=--
    Content-Type: pgp-encrypted
    Version: 1
    --=--
    Content-Type: application/octet-stream
    -----BEGIN PGP MESSAGE-----
    Version: 2.6.2
    hIwDY32hYGCE8MkBA/wOu7d45aUxF4Q0RKJprD3v5Z9K1YcRJ2fve87lMlDlx4OjeW4GDdBfLbJE7VUpp13N19GL8e/AqbyyjHH4aS0YoTk10QQ9nnRvjY8nZL3MPXSZg9VGQxFeGqzykzmykU6A26MSMexR4ApeeON6xzZWfo+0yOqAq6lb46wsvldZ96YA AABH78hyX7YX4uT1tNCWEIIBoqqvCeIMpp7UQ2IzBrXg6GtukS8NxbukLeamqVW31yt21DYOjuLzcMNe/JNsD9vDVCvOOG3OCi8=
    =zzaA
    -----END PGP MESSAGE-----
    --=----
    EBTpart

  • Problem in sending HTTP request to the server.

    Hi,
    i dveloped an ant script for sar deployment.
    i deployed a sar to my local soa server with ant script. it got deployed succesfully..
    but when i try to deploy to a remote server, getting the below error..
    "Problem in sending HTTP request to the server. Please make sure the server is up and/or check standard HTTP response code for 404"
    but the server is up and runnig and i am able to ping it from my machine and also access the console...
    below is my script
    build.properties
    wn.bea.home=C:/Oracle/Middleware
    all.needed.jars.path=D:/SourceCode/neededJAR
    oracle.soa.home=C:/Oracle/Middleware/Oracle_SOA1
    java.passed.home=C:/Oracle/Middleware/jdk160_24
    #Deployment environment
    deployment.plan.environment=DEV
    #Deploy Action
    deployAction =redeploy
    #credentials
    user=weblogic
    password=welcome1
    #For Composite deployment
    serverURL=http://10.177.154.6:7001
    forceDefault=true
    server=10.177.154.6
    port=7001
    sarLocation=D:/SourceCode/JAR
    build.xml
    <?xml version="1.0" encoding="iso-8859-1"?>
    <project name="soaDeployAll" default="deployAll">
         <echo>basedir ${basedir}</echo>
         <property environment="env"/>
    <echo>current folder ${basedir}</echo>
         <property file="${basedir}/build.properties"/>
         <taskdef resource="net/sf/antcontrib/antlib.xml">
         <classpath>
              <pathelement location="${all.needed.jars.path}/ant-contrib.jar"/>           
         </classpath>
         </taskdef>
         <target name="init">
              <tstamp>
                   <format property="timestamp" pattern="yyyy-MM-dd_HH-mm-ss"/>
              </tstamp>
              <property name="build.log.dir" location="${basedir}/buildlogs"/>
              <mkdir dir="${build.log.dir}"/> <property name="build.log.filename" value="build_${timestamp}.log"/>
              <record name="${build.log.dir}/${build.log.filename}" loglevel="verbose" append="false"/>
              <echo message="Build logged to ${build.log.filename}"/>
         </target>
         <target name="deployAll" depends="init">
         <echo>Deploy for environment ${deployment.plan.environment}</echo>
         <antcall target="deployAllComposites"/>
    </target>
    <!-- Following Actions are performed for Composite files in Managed Server - Deploy,Redeploy -->
         <target name="deployAllComposites" depends="init">
         <foreach target="deployComposites" param="Files">
              <fileset dir="${sarLocation}" casesensitive="no" includes="*.jar"/>
         </foreach>
         </target>
         <target name="deployComposites" depends="init">
         <basename file="${Files}" property="basename"/>
    <echo>Deploy Project ${basename} for environment ${deployment.plan.environment}</echo>
              <if>
                   <equals arg1="${deployAction}" arg2="deploy" />
                   <then>
                        <echo message="Deploying composites in Managed server........." />
                        <ant antfile="${oracle.soa.home}/bin/ant-sca-deploy.xml" inheritAll="true" target="deploy">
                             <property name="serverURL" value="${serverURL}"/>
                             <property name="user" value="${user}"/>
                             <property name="password" value="${password}"/>
                             <property name="overwrite" value="false"/>
                             <property name="forceDefault" value="${forceDefault}"/>
                             <property name="sarLocation" value="${sarLocation}/${basename}"/>
                        </ant>
                   </then>
                   <else>
                        <echo message="ReDeploying composites in Managed server........." />
                        <ant antfile="${oracle.soa.home}/bin/ant-sca-deploy.xml" inheritAll="true" target="deploy">
                             <property name="serverURL" value="${serverURL}"/>
                             <property name="user" value="${user}"/>
                             <property name="password" value="${password}"/>
                             <property name="overwrite" value="true"/>
                             <property name="forceDefault" value="${forceDefault}"/>
                             <property name="sarLocation" value="${sarLocation}/${basename}"/>                         
                        </ant>
                   </else>
              </if>
    </target>
    </project>
    please help....

    Hi,
    Give the serverURL as http://<host>:<managed.server.port>/soa-infra/deployer and try.
    e.g . http://10.177.154.6:8001/soa-infra/deployer
    Regards,
    Neeraj Sehgal

  • How to send a http-request from abap?

    I want to send a xml file through a http-request ,what should i do?

    Welcome to SDN
    you can use cl_http_client class to do that. search the abap general forum with key word cl_http_client and you will find lot of examples.
    Regards
    Raja

  • Can CSS route based on cookie info in HTTP request

    Hi
    I am new to CSS and am interested as it might be able to provide a solution to a problem I have seen.
    We currently have 3 Windows Servers running an ASP-based web application with a clustered SQL Server backend. The front end uses windows load balancing to distribute the load. All 3 servers are configured the same and there is only one application.
    The problem lies with the way an the application maintains session state. I am told it uses a non-persistant cookie on the client which corresponds to a session object on the server. This is opposed to maintaining state in central location such as the database. Obviously this means the client needs to be stuck to a particular server for that session. This is currently achieved by setting the Windows NLB to single affinity which places traffic from a particular IP address to the same server. This does work but the clients source IP is changed by a downstream firewall to a NAT overload address meaning all clients appear with the same IP address (different port) and hence always end up on just one server.
    The obvious next step in my mind would be to change the way NAT is done but this is not possible. The next obvious idea would be to change the application so that it maintains state in the database so the affinity of the Windows NLB could be disabled meaning requests would be dealt with using the source IP and port and hence distributed evenly. I am told this cannot be done either :) Joy!
    So I have begain to look at other possible solutions. Apologies for my very limited knowledge on the CSS as I am trying to get my head around how it can be configured. I am thinking that it may be able to help me if I used it instead of Windows NLB. I am interested in the way you can use Layer 5 stickiness. Would it be able to examine the cookie in the HTTP request and route the traffic to the correct server?
    I am aware that this will not alleviate the failover issue. If one of the servers were to fall over then the client would have to login again, however I am under the impression that this is acceptable behaviour. The main driver here is to provide load balancing to improve application performance by using all resources opposed to just one.
    Many many thanks to anyone who can give me advise on this.

    Hi Gilles
    Thanks for the info. Sounds like we are on the right path. Unfortunately I am unable to get much information from the developers. Long story. I did logon to the system whilst doing a network trace. The following is what I found in the HTTP header:
    Hypertext Transfer Protocol
    GET /XXXXX/Includes/style.asp HTTP/1.1\r\n
    Accept: */*\r\n
    Referer:
    http://xxx.xxxxx.xxx/xxxxx/login.asp\r\n
    Accept-Language: en-gb\r\n
    Accept-Encoding: gzip, deflate\r\n
    User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.1.4322)\r\n
    Host: xxxx.xxxxx.xxxxx\r\n
    Connection: Keep-Alive\r\n
    Cookie: ASPSESSIONIDQCBCDSCR=AEHBCJEDDGMMCCBHBICLELGD\r\n
    \r\n
    Why do you configure 2 services? How would I go about this given the cookie in the HTTP request?
    Many thanks
    Gary

  • How to send a document in net.HTTP.request as a POST variable?

    I have read and reread the doc on net.HTTP.request, and it says I can pass an argument of oRequest, but I have not succeeded at passing in the current document, which is what I want to do.
    I've tried app.activeDocs[0], or encoding that to a string, but though it makes the call without error, nothing is sent.
    Should oRequest be simply a document, or a variable made up of name-value pairs? How do we send multiple parameters to a POST otherwise?
    I've succeeded fine with calling using GET, but when I tried to pass the document as a GET variable, I got nothing either.
    I'm sending to a LiveCycle REST end point so either POST or GET is fine.
    Thanks!

    POSTing the current document is straightforward *provided* your script is running outside the document context (i.e. in the console or a folder-level script). There's no access from doc-level scripts for obvious reasons.
    For example, putting this in the JS console will POST the current file to a URL:
    Net.HTTP.request({
      cVerb:'POST',
      cURL: 'http://localhost/submit.php',
      oRequest: Collab.documentToStream(this),
      oHandler: {
        response: function (msg, uri, err) {
           if (err!=undefined) app.alert(msg);
    Your problem with talking to a vanilla webservice is that you cannot send the RFC1867 delimeters (i.e. form a "multipart/form-data" request) as the ReadStream object doesn't have a concatenation method in the Acrobat JSAPI. That's also how you would usually prepend other form fields, but if you're careful with your server-side coding you can send those as GET parameters in cURL. Normally you'd be polite and pass a Context-Type header in the aHeaders array - it won't matter to the transmission process but will allow your webservice to predict what the heck it's been sent.
    Your webservice will then have to read the raw data. In PHP for example, you won't get anything in the $_FILES global but you can grab the PDF by reading everything from the input buffer, with the line:
    $pdf = file_get_contents("php://input");
    If that line was in the server script that the above JS code was aimed at, the variable $pdf will contain an exact binary copy of the currently-open document.

  • SOAP Adapter Sender PI7.1: 400 Bad HTTP request

    Hello,
    I have a problem with a SOAP adapter sender communication channel.
    I'm trying to migrate a scenario from XI 3.0 to PI7.1 SP6 (PI_BASIS 2006_1_710 SAPKIPYN06).
    I can send messages successfully to the old system using the URL
        http://host:port/XISOAPAdapter/MessageServlet?channel=:BC_Name:CC_SOAP_Sender
    On PI7.1 I get
        400 Bad HTTP request
        Error: -21
        Version: 7010
        Component: HTTP_PLG
        Module: http_plgrt_mt.c
        Line: 5226
        Error Tag:
        Detail: illegal request version
    I have created a Sender Agreement, generated the wsdl from that and tried the URL in there.
    Surprisingly it has the old format, namely
        http://host:port/XISOAPAdapter/MessageServlet?senderParty=&senderService=BC_Name&receiverParty=&receiverService=&interface=myInterface&interfaceNamespace=urn:my.Interface:ns
    although the 7.1 documentation describes the ?channel=party:service:channel style only.
    Anyway, the result remains the same.
    I tried some other approaches like escaping the colons in the URL without success.
    The user has the role SAP_XI_DEVELOPER_J2EE assigned.
    Any idea what's wrong here?
    Thanks in advance
    Rainer

    >>In RWB the channel appears as "started but inactive".
    Yeah,it will be like that because you are posting messages directly to Integration server."Propose URL" does that.You are bypassing the adapter engine when you use the URL generated by "Propose URL" button.
    /people/stefan.grube/blog/2006/09/21/using-the-soap-inbound-channel-of-the-integration-engine
    The above blog gives the reason for this,if you want to bypass the adapter engine,then generate the URL as given in the above blog
    /people/siva.maranani/blog/2005/03/01/testing-xi-exposed-web-services
    This blog explains how to post message to adapter engine,here you need to change the URL,don't click on "Propose URL" button.You can monitor SOAP adapter in RWB only if you generate the URL as given in second blog
    The URL which is working for you in XI 3.0 is posting messages to adapter engine,so generate the URL in PI 7.1 in the same way,by following the second blog i have mentioned.
    Thanks
    Aamir

  • Only HTTPS requests are working for SOAP Sender and HTTP not working

    wHi Experts,
    We have enabled our HTTPS port ( SSL ) in NWA -- >> Security -- >> SSL and Key stores. So understanding is HTTPS port is now enabled on top of HTTP. So PI should be able to cater requests at both ports.
    Now, we have developed a synchronous SOAP to RFC scenario and downloaded WSDL file. This file has both links -
    a. http:<host>:<port>
    b. https:<host>:<port>
    We intend to make a PI system where both ports can work. Now questions.
    1. When we test web service exposed from PI using SOAPUI tool, only HTTPS works fine and gets the response back. If we try HTTP URL, an error is encountered - HTTTPS scheme is required.
    2. Is this whole understanding that both ports  ( HTTP, HTTPS ) should be able to operate simultaneously correct ? Or this is not at all possible ?
    3. In SOAP Sender, we tried selecting all 3 options - 1. HTTP 2. HTTPS without client authentication 3. HTTPS with client authentication.
       None of the options have any effect on testing, Each time, only HTTPS request works and HTTP doesn't.
    Can anyone please provide some hints for troubleshooting ?
    Thanks..
    regards,
    Rajagopal.

    The error "HTTPS scheme is required" is normally returned when the HTTP Security Level on the SOAP adapter is not set to "HTTP". I can see you have mentioned you have tried all these, maybe a cache refresh has gone wrong? Could try recreating the channel with just HTTP specified as security level and this should allow HTTP or HTTPS
    I assume you are using a different port number for  your HTTP and HTTPS requests from SOAP UI. Normally the HTTPS port is the same as the HTTP port number but the final zero changed to a 1 i.e. https://<host>:50001 instead of http://<host>:50000.
    You should be able to confirm both HTTP and HTTPS work OK by loading some of the system webpages in a browser over HTTP and over HTTPS i.e. http://<host>:<port>/nwa and https://<host>:<port>/nwa
    Chris

  • How to send a http request to a non java appln

    I have one legacy web application running which can handle only http request . So I need to connect (using http request) and send my request and get the response, without opening that application in browser.
    Any idea
    1) How to connect to non - java appln from a java appln ?
    2) How to use the Httprequest without displaying the page using browser?

    You can try one of three routes:
    Open a socket and write the HTTP request and parse the HTTP response yourself
    Use java.net.URLConnection
    Use Jakarta Common's HttpClient at jakarta.apache.org- Saish

  • How to send a HTTP request to servlet in java application

    I'm new in Java. I need to send a HTTP request with parameters to servlet in a java aplication. Here is my code. It can be compiled but always threw an exceptions when I ran it. Can anyone help?
    package coreservlets;
    import java.io.*;
    import java.net.*;
    public class PostHTTP
         public static void main(String args[])
              throws IOException, UnknownHostException {
              try
              // URL and servlet
                   URL myURL = new URL("http://pc076/servlet/coreservlets.OffHold");
                   URLConnection c = myURL.openConnection();
                   c.setUseCaches(false);
                   c.setDoOutput(true);
                   ByteArrayOutputStream byteStream = new ByteArrayOutputStream(512);
                   PrintWriter out = new PrintWriter(byteStream, true);
    //parameters
                   String postData = "REASON_CODE=3B&RSPCODE=JSmith&CASENUM=NA795401&REPLY=123&SOURCE=XYZ&REPLYLINK=http://pc076/servlet/coreservlets.ShowParameters";
                   out.print(postData);
                   out.flush();
                   String lengthString = String.valueOf(byteStream.size());
                   c.setRequestProperty("Content-Length", lengthString);
                   c.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
                   byteStream.writeTo(c.getOutputStream());
                   BufferedReader in =     new BufferedReader(new InputStreamReader
                                                 (c.getInputStream()));
                   String line;
                   //String linefeed = "\n";
                   //resultsArea.setText("");
                   while((line = in.readLine()) != null) {
                        System.out.println(line);
                        //resultsArea.append(linefeed);
              catch(IOException ioe) {
              // Print debug info in Java Console
              System.out.println("IOException: " + ioe);

    here are some updates to your code I haven't tested it running
    post again if you still have trouble
    URL myURL = new URL("http://pc076/servlet/coreservlets.OffHold");
    HttpURLConnection c = (HttpURLConnection)myURL.openConnection();
    c.setDoInput(true);
    c.setDoOutput(true);
    ByteArrayOutputStream byteStream = new ByteArrayOutputStream(512);
    String lengthString = String.valueOf(byteStream.size());
    c.setRequestProperty("Content-Length", lengthString);
    c.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
    PrintWriter out = new PrintWriter(byteStream, true);
    //parameters
    String postData = "REASON_CODE=3B&RSPCODE=JSmith&CASENUM=NA795401&REPLY=123&SOURCE=XYZ&REPLYLINK=http://pc076/servlet/coreservlets.ShowParameters";
    out.print(postData);
    out.flush();
    byteStream.writeTo(c.getOutputStream());
    // connect
    c.connect();
    BufferedReader in = new BufferedReader(new InputStreamReader
    (c.getInputStream()));
    String line;
    while((line = in.readLine()) != null)
        System.out.println(line);

  • How to send a https request using jsf

    hi
    Can anybody tell a sample how to send a https request using JSF ...
    thanks

    Prefix the request URI with the https protocol.
    The answer is too easy and straightforward that I guess that you mean something else. If you just want to know how to configure an SSL environment for your own webapplication, refer to the Java EE tutorial chapter 28: http://java.sun.com/javaee/5/docs/tutorial/doc/

  • File.upload on Air SDK for iOS devices failed to send http request to server.

    I am trying to use ActionScript's File.upload to upload a file on Air SDK for iOS8 environment, but the File.upload does not work properly. No handler about the file upload is executed after File.upload is invoked, and no exception is caught. When I check the network traffic of the server side, I found that no http request even hit the server after File.upload is executed. The code snippet here is very simple.
      private var file:File;
      private var dir:File;
      //This method is executed to create a file and upload it when the Upload Button is pressed.
      protected function OnUploadButtonPressed(event:MouseEvent):void{
      var str:String = 'This is test';
      var imageBytes:ByteArray = new ByteArray();
      for ( var i:int = 0; i < str.length; i++ ) {
      imageBytes.writeByte( str.charCodeAt(i) );
      try{
      dir = File.applicationStorageDirectory
      var now:Date = new Date();
      var filename:String = "test" + now.seconds + now.milliseconds + ".txt";
      file = dir.resolvePath( filename );
      var stream:FileStream = new FileStream();
      stream.open( file, FileMode.WRITE );
      stream.writeBytes( imageBytes );
      stream.close();
      file.addEventListener( Event.COMPLETE, uploadComplete );
      file.addEventListener( IOErrorEvent.IO_ERROR, ioError );
      file.addEventListener( SecurityErrorEvent.SECURITY_ERROR, securityError );
      file.addEventListener(ErrorEvent.ERROR, someError);
      file.addEventListener(ProgressEvent.PROGRESS, onProgress);
      file.upload( new URLRequest("http://10.60.99.31/MyPath/fileUploadTest.do"));//This line does not work. No handler is executed. No http request hit the server side.
      } catch( e:Error ) {
      trace( e );
      //Complete Handler
      private function uploadComplete( event:Event ):void
      trace( "Upload successful." );
      //IOError handler
      private function ioError( error:IOErrorEvent ):void
      trace( "Upload failed: " + error.text );
      //SecurityError handler
      private function securityError(error:SecurityErrorEvent):void{
      trace( "Security error:" + error.text );
      //Other handler
      private function someError(error:ErrorEvent):void{
      trace("some error" + error.text);
      //Progress handler
      private function onProgress(event:ProgressEvent):void{
      trace("progressHandler");
    When executed on Air Simulator, it works fine as expected, and the file is successfully uploaded to the server. But When executed on iOS devices(in my case, iPad), as I explain early, no handler about the file upload is executed, and no the http request even hit the server. So I think the problem may be in the client side. It seems that the Air SDK for iOS just failed to send the http request for some reason.
    To make my problem more clear, I list my environment below:
    Development Environment:  Windows7 (64bit)  / Mac os 10.9.4 (Tested on  OS platforms.)
    IDE: Flash Builder 4.7
    Air SDK:  3.8 / 16.0.0 (After I updated to the lastest Air SDK 16.0.0 , the problem still exists.)
    Application Server:  Tomcat7 + Spring
    Target OS: iOS 8
    I have been struggling for this for days. So I really appreciate it if anyone has any idea about this.
    Thanks in advance.

    Hi bluewindice ,
    As you have quoted ( ActionScript's File.upload does not work on Air SDK for iOS devices ) , this issue has been replicated at our end, and our team will be working on it.
    Thanks,
    Tushar

Maybe you are looking for

  • Variety of periodic JVM crashes (no JNI)

    Hello, I have a J2SE application that runs on a Linux box that is getting a number of various JVM crashes. The program has no JNI and does not use any libraries, it's all just Java. The call stacks are always different, and I don't see any consistenc

  • Snow Leopard Finder's Get Info fails to show Owner and Group for some files or folders which reside on a Shared Volume, hosted by G5 Server w/ OS 10.4 - why?

    Frustrations with file permissions abound, as certain co workers are unable to manually determine their level of permission or who to ask to make changes to files and folders belonging to others. Users of Snow Leopard desktop OS get unhelpful feedbac

  • JTextField.setText() please help...

    i have a field in my table that is in date format. txtempdate.setText(rsmastempl.getDate("empdate")); this produce an error. how will i display my date filed in my table in a TextBox? thank you for helping. killuasoft

  • Registering Serial for 2nd hand Macbook Air

    Hi all, I tried registering my 2008 Macbook Air. It says that "According to our records, this serial number is registered to another Apple ID. If you have more than one Apple ID, log in to My Support Profile with that Apple ID to see your other regis

  • Version Problem - Upgrade

    Hi, Now we are upgrading the system from 4.6C to ECC6. I am just analysing the total workflow in the system with SWE2 transaction. The problem is , i am seeing multiple version of workflows 0,1,2,3,4,5. Which version of workflow i need to consider ,