SOAP over HTTP/POST

Hi everyone,
I'd be eternally grateful if someone could provide me with a quick + easy solution to the following (basic?) task.
I have a user form with the required parameters and a submit button. I have an XML schema which specifies the format for the soap requests and responses. How do I accept user input, wrap it into a soap request, send it via HTTP/POST to a server ( http://localhost:9999/xyz/xyz), wait for a soap response and display the response in a readable format to the user when they press the submit button? Not that hard is it?!
Please try to be a specific as possible because I'm no Java expert. I'm just so confused with all the tutorials about wsdl, bpel, tomcat, jax ws, glassfish etc etc etc!
I use netbeans and java app server 9, though I'm open to other IDEs/servers.
Any help will be greatly appreciated,
Ruth

https://saaj.dev.java.net/source/browse/*checkout*/saSAAJ: aj/saaj-ri/docs/index.html
The Java Web Services Tutorial:
http://java.sun.com/webservices/docs/1.6/tutorial/doc/index.html
(Chapter 5)
SOAP Tutorial: http://www.w3schools.com/soap/default.asp

Similar Messages

  • Enabling SOAP over HTTPs on PI7.0

    Hello
        We have a requirement to connect PI7.0 to PI7.1 with SOAP over HTTPS. Would you please let us know what all configuration need
           1.  Setting required to be done on PI7.0 ( Communication Channels, Receiver and Sender agreements)
           2.  Where to put private key and root certificate in Visual admin
           3. Port configuration for outbound and inbound traffic.
           4. Enabling of SSL on PI7.0.
           5. Any ICM related setting on PI7.0
    Thanks & Regards

    Hi Uttam,
    Hi,
    For using HTTPS protocol, you have to chose the option of HTTPS in the 'HTTP Security Level' parameter on SOAP sender communication channel.
    For using HTTPS protocol, the SSL certificates need to be deployed on the server.
    Below are the links for more information on SSL certificates:
    http://help.sap.com/saphelp_nw70ehp1/helpdata/en/14/ef2940cbf2195de10000000a1550b0/frameset.htm
    http://www.tldp.org/HOWTO/SSL-Certificates-HOWTO/
    For choosing & installing steps of SSL, refer the below links:
    /people/aniket.tare/blog/2005/03/22/ssl-certificate-installation-procedure-for-sap-j2ee-engine-630-150-steps-in-visual-administrator
    http://info.ssl.com/article.aspx?id=10694
    -Supriya.

  • Looking for suggestion for SOAP over HTTP API to Oracle 10G

    I need to be able to write data to an oracle 10g database through a SOAP over HTTP connection. What is the suggest packages to do such an action.
    Best regards,
    Dale

    I suspect the problem is that the actual communication between client & Oracle DB server is done on a random "high port"; not 1522.
    The packets on the high port are not getting through the VPN.
    What I have made work in the past is to use ssh tunneling.
    Good Luck, you might need it.

  • Advantages and disadvantages of SOAP over Http

    Hi!
    Can any one explain about advantages and disadvantages of SOAP over HTTP.
    Thanks
    Sreenath

    Hi,
    Yes you can use RMI to communicate to your soa suite server allthough i could not get it to work from weblogic 10.3, there is a conflict with certain other libraries. From any other 10.1.3 oracle application server there should not be any problem. The biggest advantage of RMI over SOAP is performance. The soap client also generates lots of logging which can not be disabled, ... i already logged a bug on that. The advantage of SOAP over RMI is its underlying HTTP protocol which is, in some cases, the only protocol allowed by network engineers to pass through firewalls.
    Kind Regards,
    Andre

  • How can I know the end of TCP stream and/or SOAP over HTTP flow

    Hi all!
    I want to read SOAP messages over HTTP, from sniffed TCP fragments.
    How can I decide that the TCP and/or the HTTP fragmenst finished?
    For example there is a SOAP message sliced to 5 TCP packets, and the first packet contains the HTTP header and some SOAP content too. The last packet contains the SOAP XML's ending XML-tag </soap:Envelope>.
    I don't want to watch every packet's end like "if the end string is </soap:Envelope> then it is the last packet", I just simply want to know which is the last packet of that message.
    The TCP connection won't be closed after the message arrives, and let's say the HTTP header doesn't contain a Content-Length field.

    A TCP connection is just a stream of bytes. It doesn't care what those bytes are. HTTP is built on top of TCP and specifies the ability to make a request without closing the connection (HTTP 1.1 Keep Alive). So you need to understand the HTTP protocol, understand whether it's a Keep Alive connection or not, and then do the same thing a browser would to do understand when a reply has been completed and the connection is available for the next request. Otherwise, you'll just look like you're getting loads of unrelated data as you sniff the connection. Oh, and you'll probably need to understand the HTTP chunking protocol too.

  • Invoking Soap over HTTPS

    Has any one tested invoking the BPEL process using the SOAP WS invokcation over HTTPS from a OA framework web page?
    We have a UI page that takes the BPEL end point via profile option and invokes the BPEL process as follows:
    // code to create the SOAP message and send it
    org.apache.soap.messaging.Message msg = new org.apache.soap.messaging.Message();
    msg.setSOAPTransport(new SOAPHTTPConnection());
    msg.send(new URL(location), "process", requestEnv);
    Envelope responseEnv = msg.receive();
    Body responseBody = responseEnv.getBody();
    I am not sure if this can handle the HTTPS as there is no code to set the key store and certificate.
    Thank you,
    Chida

    Has any one tested invoking the BPEL process using the SOAP WS invokcation over HTTPS from a OA framework web page?
    We have a UI page that takes the BPEL end point via profile option and invokes the BPEL process as follows:
    // code to create the SOAP message and send it
    org.apache.soap.messaging.Message msg = new org.apache.soap.messaging.Message();
    msg.setSOAPTransport(new SOAPHTTPConnection());
    msg.send(new URL(location), "process", requestEnv);
    Envelope responseEnv = msg.receive();
    Body responseBody = responseEnv.getBody();
    I am not sure if this can handle the HTTPS as there is no code to set the key store and certificate.
    Thank you,
    Chida

  • SOAP over HTTPS from XE to 10.1.3

    I'm trying to setup the classic client server application using soap(web services,utl_http) over https between XE(clients) and Application server 10.1.3. I created a pl/sql web service using JDeveloper 10.1.3 and deployed it to the AS successfully.
    When trying to create a new webservice through HTML DB (over port 80), XE states that I have no input or output parameters for my soap methods. I belive its parsing my WSDL wrong...but this is another thread...I think I can make that work.
    The main technolgical problem is sending the soap msgs over https. I would perferr to do this with utl_http since I could control my logic with pure pl/sql. Is the Apache proxy route the only option?
    Is there no way for pl/sql to consume web services?
    If a JVM was included with XE then this would be a breeze(hint hint)
    Thank you
    Dan

    Dan,
    The SOAP utility with APEX appears to be very weak, I and several others have tried to use it against 'real' web services (e.g. Amazon's S3) and get the same problem, no input or output parameters.
    To do SOAP client within Oracle the hard way see ...
    http://www.oracle.com/technology/tech/webservices/htdocs/samples/dbwebservice/DBWebServices_PLSQL.html
    I'm using Simon Fell's PocketSoap library with Excel VBA to first ensure my understanding of the S3 service, then I'll use the resulting soap envelopes as templates for hand coding into PL/SQL. Not ideal, but it works.
    Tom

  • SOAP over HTTP

    I want to send XML in SOAP envelop over HTTP to Web Service. I want to used HttpUrlConnection instead of other approaches. I have set doInput and doOutput both as true as want both type of communicaiton from one HttpUrlConnection.
    I am able to get OutputStream from HttpUrlConnection but getting error 500 while trying to get InputStream.
    Any idea ... ?

    Its a question abt SOAP.I'm new to SOAP.As SOAP itself
    is a protocol (Simple obj access protocol) SOAP is no longer an acronym - I believe this was done so people's understanding of SOAP was not limited to SOAP-RPC.
    why is HTTP used to transfer data using SOAP?SOAP is an XML messaging standard. It provides a standard method for exchanging XML data in a fashion that is transport agnostic, i.e. it would be perfectly valid (though slow) to use email as the transport for SOAP messages.
    HTTP is used because it is simple, widely implemented across platforms and languages, and is also commonly available. A side effect of the use of HTTP is that many servers allow HTTP traffic through their firewalls, enabling SOAP applications to be available over a wider network (this is not the greatest from a security perspective).
    In short, HTTP is used because it's there.
    JT

  • Query regarding encoding/decoding of XML over HTTP Post request

    Hello,
    I am working on a project where I need to put SMS inside XML and
    eventually transfer this XML via HTTP post from/to server/client.
    Assuming the SMS to be 7-bit text the XML may look something like
    <?xml+version="1.0"?>
    <SMS
    TESTMESSAGE
    </SMS>
    This XML when encoded in a HTML post may look something like
    http://<IP Address>:<port>/
    POST /MessageReceiver.jsp HTTP/1.0
    Host: www.SomeHost.net
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 90
    xmlMsg=%3C%3Fxml+version%3D%221.0%22%3F%3E%0D%0A%3CSMS%0D%0A%09TESTMESSAGE0D%0A%3C%2FSMS%3E
    This xml is UTF-8 (7-bit ASCII) by default since no encoding format has been specified.
    My question - how will the encoding of xml change to - when 8 bit binary data
    is transferred via xml.
    for e.g.
    <?xml+version="1.0"?>
    <SMS
    <!!!!!BINARY DATA!!!!!>
    </SMS>
    for such a file how/what shld the encoding be set to.
    Further my spec-states the following.
    "The content of the XML must respect the encoding. Thus a SMS
    containing typically french characters must use ISO-8859-1 encoding"
    "This code needs to work with both UTF-8 and UTF-16 standards (ASCII and Unicode). Because of this the parsing code should work internally with UTF-16 and translate up/down to/from UTF-8 (ASCII) only when dealing with the basic HTTP."
    could anyone clarify this for me.

    The first thing you need to do is clear up some fundamental misconceptions about character encodings. UTF-8 is not the same thing as "7-bit ASCII", and UTF-16 is not the same as "Unicode". Anyway, you're making this a lot more difficult than it needs to be. Just use UTF-8 to encode and decode all messages; it can handle all the characters from any language you're likely to run into.

  • Query regarding sending XML over HTTP Post request

    Hello,
    I am trying to send XML data from a server to client via HTTP Post request
    And vice versa � receive the data by a client
    Assume that the xml data looks something like
    <?xml+version="1.0"?>
    So my post query will look like
    http://<IP Address>:<port>/
    POST /MessageReceiver.jsp HTTP/1.0
    Host: www.SomeHost.net
    Content-Type: application/x-www-form-urlencoded
    Content-Length: 38
    %3C%3Fxml%2Bversion%3D%221.0%22%3F%3E+
    This information will be received by the client and converted back to xml data.
    My query is - is there some library/open-source stuff that
    does the process of transcoding the entity's non-ASCII characters
    at the server side
    and decoding the URL back to human-readable form at the client side?
    i.e. I need a simple mechanism to convert
    <?xml+version="1.0"?>
    to
    %3C%3Fxml%2Bversion%3D%221.0%22%3F%3E+
    at the server side, while sending data
    and do the opposite at the client side to get the xml back.
    Also could some one confirm if JTidy is a right tool to check if the xml is well-formed?
    Or is there any other standard tool that checks for well-formed properties of xml?
    regards,
    Deepak.

    java.net.URLEncoder / URLDecoder?
    Also could some one confirm if JTidy is a right tool to check if the xml is well-formed?No, it's for parsing HTML. An XML parser is checking for well-formedness in any case.

  • SOAP over HTTPS Scenario.

    Experts,
    I am using PO 7.31 Single Stack.
    I am going to integrate with some Third-Party System ( B2B ) Scenario. As its B2B client want this to integrate this over SSL.
    We are using SOAP Communication channel at Source side.
    We have shared a PI WebService to third Party and told them to send data on this endpoint.
    I have changed following things in webservice( http to https and port no to ssl port no).
    Now Certficate part always confuses me So I have question over certificates/ PubliC/ Private Key :-
    1. Who will provide Certificate and to whom ??
    2. What kind of certificate will be shared accross parties ?? such as public private ?? PGP or X.509 ??
    I have gone through many blogs - but i am still confused.

    Hi Prabhat,
    1. Who will provide Certificate and to whom ??
    --->> Certificates are shared between both parties/systems. So PI needs to provide PI public key to receiver system and receiver system needs to provide there public key.
    2. What kind of certificate will be shared accross parties ?? such as public private ?? PGP or X.509 ??
    -->> The certificate can be X.509.
    Please refer the below blog and sap note 891877
    SSL (HTTPS) Configuration in SAP PI Systems as of release PI 7.10 – Step-by-step procedure
    regards,
    Harish

  • Asynchronous SOAP over JMS

    Is it possible to expose an operation type of "Process Notification" using SOAP over JMS? When you select the Process Web Service option on the process it only allows you to define SOAP over HTTP web services. It's possible to invoke one-way SOAP over JMS web services but I cannot find a way of exposing a BPM process (or process notification) as a one-way SOAP over JMS web service.
    Thanks in advance

    There is not a way to use JMS instead of HTTP to expose the process notifications. You would need to create a JMS listener, parse the soap message, and then notify the instance (using correlations probably) from within the global.
    Creating JMS listeners is not hard to do. Let me know if you need help with that.
    HTH,
    Mark

  • SOAP vs HTTP

    Hello,
    I'm new to java and I'm planning to build a client/server application, and I wanted to know what were the differences between using SOAP over HTTP to communicate between server and client, and also what are the benefits of one methodology over the other?

    You might want to take a look at the information on
    http://www.pushtotest.com/ptt
    Frank Cohen builds software to test distributed systems, and has lots of information that sounds like what you want. If you want dead tree, there's a book called
    Java Web Services
    SAMS publishing
    Various authors (Frank is one)
    They discuss in depth with examples, sample apps, advice on system set up.

  • Flat file over HTTP or SOAP

    Hey Guys,
    I need to post a Flat file over HTTP (or SOAP), is this possible without developing my own Adapter module?
    I just need to get a Flat file from a FTP server and post to another server via HTTP,since there is no message mapping involved, i developed the scenario without any Integration Repository objects, it is just a pass-through scenario.
    Now i am stuck on the receiver side since i am unable to post Flat file over HTTP.
    Secondly i have Login URL, Logout URL and upload URL from the receiver system, i don't see any place in receiver HTTP adapter to put all these 3 URL's, can i use SOAP adapter to put all these URL anywhere?
    Any help would be appreciated.
    Thanks
    Saif
    Edited by: Saif Manzar on Jan 19, 2010 2:51 AM

    Hey Guys,
    I need to post a Flat file over HTTP (or SOAP), is this possible without developing my own Adapter module?
    I just need to get a Flat file from a FTP server and post to another server via HTTP,since there is no message mapping involved, i developed the scenario without any Integration Repository objects, it is just a pass-through scenario.
    Now i am stuck on the receiver side since i am unable to post Flat file over HTTP.
    Secondly i have Login URL, Logout URL and upload URL from the receiver system, i don't see any place in receiver HTTP adapter to put all these 3 URL's, can i use SOAP adapter to put all these URL anywhere?
    Any help would be appreciated.
    Thanks
    Saif
    Edited by: Saif Manzar on Jan 19, 2010 2:51 AM

  • XML over HTTP using BPEL (not using SOAP)... is this possible?

    Hi there.
    We're trying to expose a BPEL process which will be exclusively triggered from a HTTP POST. The Client Partner Link in the BPEL process models Oracle's Transparent PunchOut standard. This standard is strict XML-over-HTTP, SOAP is not involved.
    However, I am getting issues when I POST the XML to BPEL. It is telling me that it requires a SOAPAction in the header. Again, the design dictates that this is raw XML over HTTP, so we are not to use any SOAP specific header values nor any kind of SOAP wrapper.
    I deployed the sample 'HTTPPostService' process which was delivered with BPEL. I am seeing the same error when I try to POST XML to this process as well. I get a response (in a SOAP wrapper) saying that it wants a SOAPAction in the header. The WSDL used to create this sample process clearly does not bind to SOAP, (there are no mentions of the SOAPAction in the operation, etc) so I do not understand.
    So, my question is: Is is possible to POST raw XML to a BPEL process? Or does BPEL require all processes to follow the SOAP 'protocol' ?
    Thanks for any help.
    Message was edited by:
    [email protected]

    I am also trying to do the same stuff. If i deploy the sample application HttpGetService, will i be able to send the request from browser the way we send typical http get request?
    here is the url which i want to use to invoke Http get BPEL
    http://cybage1:9700/httpbinding/default/HTTPGetService?ssn=10&id=20
    but i am getting following exception
    500 Internal Server Error
    java.lang.IndexOutOfBoundsException: Index: 3, Size: 3
         at java.util.ArrayList.RangeCheck(ArrayList.java:507)
         at java.util.ArrayList.get(ArrayList.java:324)
         at com.collaxa.cube.ws.http.HttpBindingServlet.call(HttpBindingServlet.java:113)
         at com.collaxa.cube.ws.http.HttpBindingServlet.doGet(HttpBindingServlet.java:97)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:810)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:798)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:278)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:120)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
         at java.lang.Thread.run(Thread.java:534)

Maybe you are looking for