Calling a webservice through B1i

Hi Everyone
Can we somehow link B1i call to get acess of a web service (like exchange rates, time servers etc).
Help would be highly appreciated..
thnx n regards

Hi Nitin,
Theres a Web Service sample in which you can retreive the time of server (www.xmlwebservices.cc). I need to check if this webpage will still be up and running as now is down.
The sample includes and IPO step, a bizflow, xsl file and xml file (which also be attached to the Thread)
Just to let you know I'm on it.
Best regards,
Felipe

Similar Messages

  • Calling a webservice through altova tool

    Hi ,
    I posted the same earlier .
    the error is not yet solved.
    If u tell me the email id i will send the screen shots and tell me where exactly the problem is.
    Thanks
    Srini

    Hi,
    What is the error ? try out with SOAP Client tool to test the webservice.
    about SOAP client - https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/9b16d790-0201-0010-4e9b-baa5f42830d8
    Regards,
    moorthy

  • Can i call a webService through Swing

    Hii Javaites
    I am developing a appliction where the client can be offline, , while he is offliline , he can do certain things like fill timesheets.Later on when he connects to net , and when he goes to my site , he can upload his timesheets to a webservice.
    So for achieving this , i ma planning to make the client side(offline component ) in SWING , and when he connects to net , he can synchronize his timesheets with the database , on the server.
    So i wnt 2 know , tht is this approach right and possible.
    is there any other way 2 go about it.

    well, whether the approach is right or wrong, depends on your business needs. But it is possible to connect to a web service from a java application.
    ~Debopam

  • Problem invoking XI webservice through webdynpro

    We have created a webservice on XI that calls the BAPI_COMPANYCODE_GETLIST on an R/3 4.6C system.  We generated the WSDL using the Integration builder and corrected the URL to point to the webservice (rather than the wizard proposed URL).
    We can call the webservice through XMLspy and other tools.  But we are not able to use webdynpro to invoke the webservice.  We uploaded the webservice on the web application server so we can get to it through a URL.
    The problem is that when we use webdynpro and try to link it to a webservice, we can point to the URL which is for the WSDL we uploaded to the webserver.  But there is no other field in webdynpro to specify the URL for the webservice endpoint.  The endpoint is actually in the WSDL and it seems correct:
    http://servername:50000/XISOAPAdapter/MessageServlet?channel=:BS_EXTERNALAPP:BAPI_COMPANYCODE_GETLIST_WEBSERVICE_SOAP_SENDER;version=3.0;Sender.Service=BS_EXTERNALAPP;Interface=http://xyz.com/xi_demo/BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI
    Through XMLspy we can just point to the WSDL.  And then we can just specify the username and password and it runs.  But with webdynpro, we are not able to invoke it.
    Any ideas what we can do?
    Here is the WSDL below:
    Thanks,
    Jay
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:rfc="urn:sap-com:document:sap:rfc:functions" xmlns:p1="http://xyz.com/xi/xi_demo" name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI" targetNamespace="http://xyz.com/xi/xi_demo">
         <wsdl:types>
              <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:sap-com:document:sap:rfc:functions" targetNamespace="urn:sap-com:document:sap:rfc:functions">
                   <xsd:element name="BAPI_COMPANYCODE_GETLIST.Response">
                        <xsd:complexType>
                             <xsd:all>
                                  <xsd:element name="RETURN" type="BAPIRETURN" minOccurs="0"/>
                                  <xsd:element name="COMPANYCODE_LIST">
                                       <xsd:complexType>
                                            <xsd:sequence>
                                                 <xsd:element name="item" type="BAPI0002_1" minOccurs="0" maxOccurs="unbounded"/>
                                            </xsd:sequence>
                                       </xsd:complexType>
                                  </xsd:element>
                             </xsd:all>
                        </xsd:complexType>
                   </xsd:element>
                   <xsd:element name="BAPI_COMPANYCODE_GETLIST">
                        <xsd:complexType>
                             <xsd:all>
                                  <xsd:element name="COMPANYCODE_LIST">
                                       <xsd:complexType>
                                            <xsd:sequence>
                                                 <xsd:element name="item" type="BAPI0002_1" minOccurs="0" maxOccurs="unbounded"/>
                                            </xsd:sequence>
                                       </xsd:complexType>
                                  </xsd:element>
                             </xsd:all>
                        </xsd:complexType>
                   </xsd:element>
                   <xsd:complexType name="BAPI0002_1">
                        <xsd:sequence>
                             <xsd:element name="COMP_CODE" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="4"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="COMP_NAME" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="25"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                        </xsd:sequence>
                   </xsd:complexType>
                   <xsd:complexType name="BAPIRETURN">
                        <xsd:sequence>
                             <xsd:element name="TYPE" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="1"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="CODE" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="5"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="MESSAGE" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="220"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="LOG_NO" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="20"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="LOG_MSG_NO" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="6"/>
                                            <xsd:pattern value="\d+"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="MESSAGE_V1" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="50"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="MESSAGE_V2" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="50"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="MESSAGE_V3" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="50"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                             <xsd:element name="MESSAGE_V4" minOccurs="0">
                                  <xsd:simpleType>
                                       <xsd:restriction base="xsd:string">
                                            <xsd:maxLength value="50"/>
                                       </xsd:restriction>
                                  </xsd:simpleType>
                             </xsd:element>
                        </xsd:sequence>
                   </xsd:complexType>
              </xsd:schema>
         </wsdl:types>
         <wsdl:message name="rfc.BAPI_COMPANYCODE_GETLIST.Input">
              <wsdl:part name="parameters" element="rfc:BAPI_COMPANYCODE_GETLIST"/>
         </wsdl:message>
         <wsdl:message name="rfc.BAPI_COMPANYCODE_GETLIST.Output">
              <wsdl:part name="parameters" element="rfc:BAPI_COMPANYCODE_GETLIST.Response"/>
         </wsdl:message>
         <wsdl:portType name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI">
              <wsdl:operation name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI">
                   <wsdl:input message="p1:rfc.BAPI_COMPANYCODE_GETLIST.Input"/>
                   <wsdl:output message="p1:rfc.BAPI_COMPANYCODE_GETLIST.Output"/>
              </wsdl:operation>
         </wsdl:portType>
         <wsdl:binding name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MIBinding" type="p1:BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI">
              <soap:binding xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
              <wsdl:operation name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI">
                   <soap:operation xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" soapAction="http://sap.com/xi/WebService/soap1.1"/>
                   <wsdl:input>
                        <soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
                   </wsdl:input>
                   <wsdl:output>
                        <soap:body use="literal" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
                   </wsdl:output>
              </wsdl:operation>
         </wsdl:binding>
         <wsdl:service name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MIService">
              <wsdl:port name="BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MIPort" binding="p1:BAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MIBinding">
                   <soap:address location="http://servername:50000/XISOAPAdapter/MessageServlet?channel=:BS_EXTERNALAPP:BAPI_COMPANYCODE_GETLIST_WEBSERVICE_SOAP_SENDER&version=3.0&Sender.Service=BS_EXTERNALAPP&Interface=http%3A%2F%2Fxyz.com%2Fxi%2Fxi_demo%5EBAPI_COMPANYCODE_GETLIST_OUTBOUND_SYNC_MI" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"/>
              </wsdl:port>
         </wsdl:service>
    </wsdl:definitions>

    When i try to make the call through Test Data service in Visual composer, i get the error: "Portal request failed (Could not execute Web service operation)".  This happens regardless of whether we supply input values for Comp Code and Comp Name. 
    So Visual composer is reading the WSDL and showing the input parameters correctly.  The link for the WSDL needs the same authentication user and pwd as the actual webservice invocation link which is in the WSDL. 
    So i am not sure why the call is failing because it works easily through XMLspy.
    - Jay

  • SAP PI calling the webservice generated through BRF+

    Hi All,
    The scenario is
    SAP ECC(IDoc) --> PI --> SAP MII
    . The data coming from ECC in the IDoc will be in a third party format, but we want MII to receive data in SAP format.
    For this we have decided to use BRF. I want to know that how can I use the webservice which we generate from BRF in SAP PI. Which adapter supports calling of webservice or if there is any other section of SAP PI where this transformation can be done using BRF+ webservice? Please help
    Thanks,
    NehaSingh

    Hi,
    The message coming from ECC has values in ISO format and MII needs values in SAP format.  For this conversion to happen I need to use the BRF+ and when I raised the same request on "Business Rule Management/BRF+" forum. I got the following reply.
    ht[Re: Calling web service generated through BRF+ in SAP PI|Re: Calling web service generated through BRF+ in SAP PI]
    Now, Can anyone please help me with answers to following question:
    Since my Source Message is an IDoc, I cannot directly use the RFC that will call the Function Module that I require for format conversion,
    Can I use RFC Lookup to satisfy the requirement. If yes how to go about it. Actually I am using RFC LookUp for the first time, so the basic steps that we need to follow for RFC Lookup are needed. I went through some Blogs but did not understand how it will be applicable in my case. Please Help
    Thanks and Regards,
    NehaSingh

  • Call webservices through asp do net page

    Anyone got an example of ASP.NET that will call a webservices configure for Oracle Weblogic 12c
    I can install the web services on weblogic now need to test through a web page before handing off to the developers.
    Can anyone help provide an example how to run the webservices through ASP.NET page?
    Cheers

    I believe you are at the wrong forum. However as far as I know like in Jdeveloper ASP has webservice proxy class so you can show wsdl and this will be your starting point.

  • To Call an HTTPS webservice through Forms

    Hi
    I have followed http://st-curriculum.oracle.com/obe/forms/11g/sms_webservice/webservices_forms_11g.htm but this only covers HTTP connections. The java client that I am preparing uses HTTPS link.
    Before importing the jar in Oracle Forms, we want to test if the jar works fine. So in the unix server, I try to execute the jar and I get java.net.UnknownHostException: wugateway2pi.westernunion.net..
    This url will only allow access from the servers the third party has provided access to. So from the unix server we are able to ping and telnet this ip. We have installed the certificate they have provided local to the jar.
    We did the same configuration in windows server when we used 10g and the connection went through successfully.
    Can anyone please give steps on how to resolve this issue
    thanks

    Hi user10264958
    >
    I have followed http://st-curriculum.oracle.com/obe/forms/11g/sms_webservice/webservices_forms_11g.htm but this only covers HTTP connections. The java client that I am preparing uses HTTPS link.
    Before importing the jar in Oracle Forms, we want to test if the jar works fine. So in the unix server, I try to execute the jar and I get java.net.UnknownHostException: wugateway2pi.westernunion.net..
    >
    That the jar is not running on Linux is your problem? The exception is probably coming from httpurlconnection because the host cannot be reached. This could because your Linux does not have the required network access.
    But is this your problem?
    >
    This url will only allow access from the servers the third party has provided access to. So from the unix server we are able to ping and telnet this ip.
    >
    The server is trying to do mutual authentication and rightly so as this is a remittance system. Ping and telnet work for ip, but that does not mean you have access to the services. But is that your problem?
    We have installed the certificate they have provided local to the jar.You installed in jar , but are you using it in your System.setProperty("javax.net.ssl.keyStore" or equivalent in Java?
    Again, is this your problem?
    >
    We did the same configuration in windows server when we used 10g and the connection went through successfully.
    Can anyone please give steps on how to resolve this issue
    >
    So Windows is not your issue. Then what is?
    Articulating your problem accurately dramatically increases the chances of getting a resolution.
    BTW, I have nothing against Java but why are you trying to use Java for calling a Webservice from Forms ? You have UTL_HTTP pacakage (Request and Response sub programs) that allow you to do this in PL/SQL. Of course you will need Wallet for HTTPS calls from PL.SQL.
    More info here {thread:id=2396886}
    Cheers,
    PS : BTW the URL wugateway2pi.westernunion.net does not land on any web page. So no wonder you get unknown host exception.
    Edited by: Prabodh on Jul 31, 2012 5:07 PM

  • OSB 10.3.1 : Calling externall MTOM webservice through HTTPS

    Hi,
    We have OSB process that calls MTOM webservice via Business Service. It's works fine over HTTP connection.
    We secure the connection one-way ssl client, we imported public certificate to trusted keystore in wls.
    The business service calls the webservice over https, the Webservice receive the streaming and generates file.
    The problem is when the webservice returns result, the connection is froze and the wls where is the webservice generates this exception
    Couldn't create SOAP message due to exception: org.jvnet.mimepull.MIMEParsingException: Missing start boundary
    com.sun.xml.ws.protocol.soap.MessageCreationException: Couldn't create SOAP message due to exception: org.jvnet.mimepull.MIMEParsingException: Missing start boundary
    at com.sun.xml.ws.encoding.SOAPBindingCodec.decode(SOAPBindingCodec.java:292)
    at com.sun.xml.ws.transport.http.HttpAdapter.decodePacket(HttpAdapter.java:276)
    at com.sun.xml.ws.transport.http.HttpAdapter.access$500(HttpAdapter.java:93)
    at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:432)
    at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:244)
    at com.sun.xml.ws.transport.http.servlet.ServletAdapter.handle(ServletAdapter.java:134)
    at weblogic.wsee.jaxws.HttpServletAdapter$AuthorizedInvoke.run(HttpServletAdapter.java:272)
    at weblogic.wsee.jaxws.HttpServletAdapter.post(HttpServletAdapter.java:185)
    at weblogic.wsee.jaxws.JAXWSServlet.doPost(JAXWSServlet.java:180)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at weblogic.wsee.jaxws.JAXWSServlet.service(JAXWSServlet.java:64)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
    at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
    at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3498)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(Unknown Source)
    at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
    at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
    at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    Caused by: org.jvnet.mimepull.MIMEParsingException: Missing start boundary
    at org.jvnet.mimepull.MIMEParser.skipPreamble(MIMEParser.java:290)
    at org.jvnet.mimepull.MIMEParser.access$200(MIMEParser.java:62)
    at org.jvnet.mimepull.MIMEParser$MIMEEventIterator.next(MIMEParser.java:130)
    at org.jvnet.mimepull.MIMEParser$MIMEEventIterator.next(MIMEParser.java:117)
    at org.jvnet.mimepull.MIMEMessage.makeProgress(MIMEMessage.java:186)
    at org.jvnet.mimepull.MIMEMessage.parseAll(MIMEMessage.java:168)
    at org.jvnet.mimepull.MIMEMessage.<init>(MIMEMessage.java:85)
    at com.sun.xml.ws.encoding.MimeMultipartParser.<init>(MimeMultipartParser.java:88)
    at com.sun.xml.ws.encoding.MimeCodec.decode(MimeCodec.java:180)
    at com.sun.xml.ws.encoding.SOAPBindingCodec.decode(SOAPBindingCodec.java:279)
    I tested over https the same webservice using java client WS (generated by jdeveloper) and that works fine.
    Any idea
    Thanks,
    Maroun

    Resolved
    The problem is coming from OSB it happens when Business Service invoke WS in HTTPS, BS sends twice the request the first one contains the right envelop and the second one contains in empty request.
    The Oracle Support helped me to resolve the problem; we changed the QoS (Quality Of Service) to Exactly once
    Maroun

  • Call webservice through URL (without client implementation)

    Hello,
    I am a newbie in webservices development. I have created my webservice, invoked it with a java client and everything works well.
    But I was wondering if it is possible to call a webservice directly by entering a URL in my browser.
    What I really need to do is to change the href property of the <a> tag in HTML like this :
    <a href="url_to_call_my_webservice"> my link to webservice </a>Can I do this?

    So, how do I do to call my webservice? Do I have to link to another page which creates a client and call my webservice ?
    What if I need a webservice to get an image like this :
    <img src="my_webservice_to_get_my_image">Is a servlet a better solution?
    Thanks for your help!

  • Error while consuming PLSQL Webservice through BPEL

    HI ,
    I have created a simple PLSQL Web service called "HelloWorld" and it got successfully deployed .
    When I tried to test this webservice through BPEL Process Manager , its showing me error everytime that ( Could not create object of class 'dimple.HelloWorldWebServiceUser'; nested exception is: java.lang.ClassNotFoundException: dimple.HelloWorldWebServiceUser</summary> ) .
    Please anyone help me out with this problem .
    Thanks
    Prashant Dwivedi

    HI ,
    I have created a simple PLSQL Web service called "HelloWorld" and it got successfully deployed .
    When I tried to test this webservice through BPEL Process Manager , its showing me error everytime that ( Could not create object of class 'dimple.HelloWorldWebServiceUser'; nested exception is: java.lang.ClassNotFoundException: dimple.HelloWorldWebServiceUser</summary> ) .
    Please anyone help me out with this problem .
    Thanks
    Prashant Dwivedi

  • Calling secured webservice from java

    Hi Experts,
    I am trying to call a secured webservice from java.
    I got the code to call a non secured web service in java.
    What changes do i need to do in this to call a secured webservice.
    Please help me.
    Thank you
    Regards
    Gayaz
    calling unsecured webservice
    package wscall1;
    import java.io.BufferedReader;
    import java.io.ByteArrayOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.io.StringBufferInputStream;
    import java.io.StringReader;
    import java.io.StringWriter;
    import java.io.Writer;
    import java.net.HttpURLConnection;
    import java.net.MalformedURLException;
    import java.net.URL;
    import java.net.URLConnection;
    import java.security.Permission;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.ParserConfigurationException;
    import org.apache.xml.serialize.OutputFormat;
    import org.apache.xml.serialize.XMLSerializer;
    import org.w3c.css.sac.InputSource;
    import org.w3c.dom.Document;
    import org.w3c.dom.NodeList;
    import org.xml.sax.SAXException;
    public class WSCall2 {
    public WSCall2() {
    super();
    public static void main(String[] args) {
    try {
    WSCall2 ss = new WSCall2();
    System.out.println(ss.getWeather("Atlanta"));
    } catch (Exception e) {
    e.printStackTrace();
    public String getWeather(String city) throws MalformedURLException, IOException {
    //Code to make a webservice HTTP request
    String responseString = "";
    String outputString = "";
    String wsURL = "https://ewm52rdv:25100/Saws/SawsService";
    URL url = new URL(wsURL);
    URLConnection connection = url.openConnection();
    HttpURLConnection httpConn = (HttpURLConnection)connection;
    ByteArrayOutputStream bout = new ByteArrayOutputStream();
    //Permission p= httpConn.getPermission();
    String xmlInput =
    "<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:ser=\"http://www.ventyx.com/ServiceSuite\">\n" +
    " <soapenv:Header>\n" +
    "     <soapenv:Security>\n" +
    " <soapenv:UsernameToken>\n" +
    " <soapenv:Username>sawsuser</soapenv:Username>\n" +
    " <soapenv:Password>sawsuser1</soapenv:Password>\n" +
    " </soapenv:UsernameToken>\n" +
    " </soapenv:Security>" + "</soapenv:Header>" + " <soapenv:Body>\n" +
    " <ser:GetUser>\n" +
    " <request><![CDATA[<?xml version=\"1.0\" encoding=\"UTF-8\"?> \n" +
                "                        <GetUser xmlns=\"http://www.ventyx.com/ServiceSuite\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">\n" +
                "                        <UserId>rs24363t</UserId>\n" +
                "                        </GetUser>]]>\n" +
    " </request>\n" +
    " </ser:GetUser>\n" +
    " </soapenv:Body>\n" +
    "</soapenv:Envelope>";
    byte[] buffer = new byte[xmlInput.length()];
    buffer = xmlInput.getBytes();
    bout.write(buffer);
    byte[] b = bout.toByteArray();
    String SOAPAction = "GetUser";
    // Set the appropriate HTTP parameters.
    httpConn.setRequestProperty("Content-Length", String.valueOf(b.length));
    httpConn.setRequestProperty("Content-Type", "text/xml; charset=utf-8");
    httpConn.setRequestProperty("SOAPAction", SOAPAction);
    // System.out.println( "opening service for [" + httpConn.getURL() + "]" );
    httpConn.setRequestMethod("POST");
    httpConn.setDoOutput(true);
    httpConn.setDoInput(true);
    OutputStream out = httpConn.getOutputStream();
    //Write the content of the request to the outputstream of the HTTP Connection.
    out.write(b);
    out.close();
    //Ready with sending the request.
    //Read the response.
    InputStreamReader isr = new InputStreamReader(httpConn.getInputStream());
    BufferedReader in = new BufferedReader(isr);
    //Write the SOAP message response to a String.
    while ((responseString = in.readLine()) != null) {
    outputString = outputString + responseString;
    //Parse the String output to a org.w3c.dom.Document and be able to reach every node with the org.w3c.dom API.
    Document document = parseXmlFile(outputString);
    NodeList nodeLst = document.getElementsByTagName("User");
    String weatherResult = nodeLst.item(0).getTextContent();
    System.out.println("Weather: " + weatherResult);
    //Write the SOAP message formatted to the console.
    String formattedSOAPResponse = formatXML(outputString);
    System.out.println(formattedSOAPResponse);
    return weatherResult;
    public String formatXML(String unformattedXml) {
    try {
    Document document = parseXmlFile(unformattedXml);
    OutputFormat format = new OutputFormat(document);
    format.setIndenting(true);
    format.setIndent(3);
    format.setOmitXMLDeclaration(true);
    Writer out = new StringWriter();
    XMLSerializer serializer = new XMLSerializer(out, format);
    serializer.serialize(document);
    return out.toString();
    } catch (IOException e) {
    throw new RuntimeException(e);
    private Document parseXmlFile(String in) {
    try {
    DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
    DocumentBuilder db = dbf.newDocumentBuilder();
    InputSource is = new InputSource(new StringReader(in));
    InputStream ins = new StringBufferInputStream(in);
    return db.parse(ins);
    } catch (ParserConfigurationException e) {
    throw new RuntimeException(e);
    } catch (SAXException e) {
    throw new RuntimeException(e);
    } catch (IOException e) {
    throw new RuntimeException(e);
    } catch (Exception e) {
    throw new RuntimeException(e);
    static {
    javax.net.ssl.HttpsURLConnection.setDefaultHostnameVerifier(new javax.net.ssl.HostnameVerifier() {
    public boolean verify(String hostname, javax.net.ssl.SSLSession sslSession) {
    if (hostname.equals("ewm52rdv")) {
    return true;
    return false;
    }

    Gayaz  wrote:
    What we are trying is we are invoking webservice by passing SOAP request and we will get soap response back.I understand what you're trying to do, the problem is with tools you're using it will take a while for you do anything a little away from the trivial... Using string concatenation and URL connection and HTTP post to call webservices is like to use a hand drill... It may work well to go through soft wood, but it will take a lot of effort against a concrete wall...
    JAX-WS and JAXB and annotations will do everything for you in a couple of lines and IMHO you will take longer to figure out how to do everything by hand than to learn those technologies... they are standard java, no need to add any additional jars...
    That's my thought, hope it helps...
    Cheers,
    Vlad

  • How to pass a xml CDATA in string element when OSB calling a webservice?

    How to pass a xml CDATA in string element when OSB calling a webservice?
    I have a business service (biz) that route to operation of a webservice.
    A example of request to this webservice legacy:
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:eg="example">
    <soapenv:Header/>
    <soapenv:Body>
    <ex:execute>
    <ex:arg><![CDATA[<searchCustomerByDocumentNumber>
    <documentNumber>12345678909</documentNumber>
    </searchCustomerByDocumentNumber>]]></ex:arg>
    </ex:execute>
    </soapenv:Body>
    </soapenv:Envelope>
    the type of ex:arg is a string.
    How to pass this CDATA structure to webservice in OSB?

    Steps to solve this problem:
    1. Create a XML Schema. E.g.:
    <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
         elementFormDefault="unqualified">
         <xs:complexType name="searchCustomerByDocumentNumber">
              <xs:sequence>
                   <xs:element name="documentNumber" minOccurs="0">
                        <xs:annotation>
                             <xs:documentation>
                             </xs:documentation>
                        </xs:annotation>
                        <xs:simpleType>
                             <xs:restriction base="xs:string" />
                        </xs:simpleType>
                   </xs:element>
         </xs:sequence>
         </xs:complexType>
         <xs:element name="searchCustomerByDocumentNumber" type="searchCustomerByDocumentNumber"></xs:element>
    </xs:schema>
    With this XSD, the XML can be generate:
    <?xml version="1.0" encoding="UTF-8"?>
    <searchCustomerByDocumentNumber xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="searchCustomerByDocumentNumber.xsd">
    <documentNumber>documentNumber</documentNumber>
    </searchCustomerByDocumentNumber>
    2. Create a XQuery to create a searchCustomerByDocumentNumber ComplexType. E.g.:
    (:: pragma bea:global-element-return element="searchCustomerByDocumentNumber" location="searchCustomerByDocumentNumber.xsd" ::)
    declare namespace xf = "http://tempuri.org/NovoSia/CreateSearchCustomerByDocumentNumber/";
    declare function xf:CreateSearchCustomerByDocumentNumber($documentNumber as xs:string)
    as element(searchCustomerByDocumentNumber) {
    <searchCustomerByDocumentNumber>
    <documentNumber>{ $documentNumber }</documentNumber>
    </searchCustomerByDocumentNumber>
    declare variable $documentNumber as xs:string external;
    xf:CreateSearchCustomerByDocumentNumber($documentNumber)
    3. In your stage in pipeline proxy add a assign calling the XQuery created passing the document number of your payload.
    Assign to a variable (e.g.: called searchCustomerByDocumentNumberRequest)
    4. Create another XQuery Transformation (XQ) to create a request to the webservice legacy. E.g.:
    <ex:arg>{fn-bea:serialize($searchCustomerByDocumentNumberRequest)}</ex:arg>
    For more information about xquery serialize function:
    41.2.6 fn-bea:serialize()
    You can use the fn-bea:serialize() function if you need to represent an XML document as a string instead of as an XML element. For example, you may want to exchange an XML document through an EJB interface and the EJB method takes String as argument. The function has the following signature:
    fn-bea:serialize($input as item()) as xs:string
    Source: http://docs.oracle.com/cd/E14571_01/doc.1111/e15867/xquery.htm

  • Can we call a webservice  using standalone java application  ?

    Hi friends,
                   Can we call configurd webservice in xi , using standalone java application by just giving url of webservice ?
                  OR
                  Only by means of WEBDynapro we can call  ?
                    Can you please tell me the answer for this .
    Regards .,
    V.Rangarajan

    HI Ranga Rajan
    well, If at all if you have webservice...you can import that werbserivce as External definition in to IR.
    How to import:
    1) Go to IR and and move to your requied component and there you can see the option called imported objects...select on imported objects where you can give the name and you can select the webservices which you want to use it.
    2) Hope you are aware of that a werbservice will have the request and response.
    3) Create the mapping program accroding to your requirement.
    Go through blogs of Bhavesh and Naveen which talks about calling webservice in a specific condition:
    Webservice Calls From a User Defined Function - /people/bhavesh.kantilal/blog/2006/11/20/webservice-calls-from-a-user-defined-function
    Consuming/Calling webservices from DataBases - /people/sap.user72/blog/2005/10/20/consumingcalling-webservices-from-databases
    Also check this help file on Web Services:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/336365d3-0401-0010-9884-a651295aeaa9
    Cheers..
    Vasu
    <i>** Reward Points if found useful **</i>

  • Problem to call web service through WSDL2Java

    Hi All,
    I am gettig the error message while trying to run the below code to call web service:
    Code:
            org.apache.axis.client.Call _call = createCall();
            _call.setOperation(_operations[0]);
            _call.setUseSOAPAction(true);
           _call.setSOAPActionURI("");
            _call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
            _call.setOperationName(new javax.xml.namespace.QName("http://10.171.44.97/service", "testWS"));
            setRequestHeaders(_call);
            setAttachments(_call);
            System.out.println("before invoke");
         java.lang.Object _resp = _call.invoke(new java.lang.Object[] {input});--------------------------------------------------------------------------
    Error-
    org.xml.sax.SAXException: Error: URI=null Line=3: Illegal
    xml:lang value "".----------------------------------
    I would appreciate if anyone can help me out.
    Thanks in advance.
    Regards
    Sachin

    Hi,
    Jason Straub's excellent [Flexible Web Service API|http://jastraub.blogspot.com/2008/06/flexible-web-service-api.html] could be just what you need.
    The blog posting also describes how to integrate the code into your page.
    Regards,
    Georger
    sundhar.v wrote:
    Hi
    Can we call web service through loop, If so how we can do.
    I wanted to transfer n records ex:100. to pass one record i need to call web service, like that to pass 100 records i need to call 100 times webservices and store results of each.
    Have created web reference and form so that it can send one record on submit and return's result to text box.
    I need to call this Web Service Request     page process through another plsql process.
    How can we resolve this.
    Thanks
    Sundhar

  • How to call a webService from WebDynPro ABAP ?

    We are trying to call a webService from WebDynPro-ABAP application. It is not working, While if we are calling the WebService from a Report, it is working.
    How exactly do we call a WebService from a WebDynPro-ABAP application?
    What are the main steps involved ?

    Hi Phani,
    You will need to create a service call as follows.
    Right click on your WD component name and select Create->Service Call
    The wizard will guide you through a series of steps to make a Web Service Call. On the 3rd screen, it will give you options such as Function Module, Web Service, etc
    Before making a service call, you will need to create a proxy for the Web service in the ABAP Workbench using a WSDL document as a basis. To create or consume Web services, you will need the authorizations associated with the role SAP_BC_WEBSERVICE_ADMIN.

Maybe you are looking for