Exposing legacy-system's service using web services

Hi everybody,
     I have questions about how web services can be used with legacy system.
Let�s say I have a server serving stock data. The server is just POJO, it isn�t web module, doesn�t run on any J2EE container and client will request for data using my proprietary API which run over TCP/IP. My question is that what is the best practice or widely used pattern for exposing my stock service through web services.
     I�m not a web service expert so I think the easiest patter may be using web services as an adapter for my API. I�ll use jax-rpc to create web services StockWS.war and deploy it on a web server running on the same machine with my stock server. The web services will, in turn, internally use my proprietary API to request data.
I can see 2 problems in the above approach.
1. The need of web server. Administrator needs to start 2 processes; stock server and the web server containing StockWS.war. It would be great if I can get everything work in one process. Is there any framework or API that my stock server can internally use to intercept soap request over HTTP so that I don�t need a web server and everything is encapsulated in one process?
2. Performance. There will be my API sit between web services runtime layer and my stock server which may cause performance issue. If I can find a framework I�ve mentioned in problem1 then I can get rid of the API layer.
Please ignore my grammar mistakes.
Any suggestion is welcome, and if you have experiences integrating web services with your legacy system, feel free to share it here.
Thanks in advance.

Hi,
With regards to your statemetn "SDN downloaded document says to Generate Webservice URL through ABAP"   <- can you tell me more please? references/links/attachment?
As far as I am aware, that the type of web service required for integration it a 'normal' Netweaver Web app server web service.
There are limitations about the complexity of the WSDL - see Notes:
1653655 - Limitations in Web Service WSDL URL usage in Xcelsius 4.0
1703839 - Limitations of Web service usage in Xcelsius / Dashboard Design
also , changes between SAP versions requires reworking the WSDL
Note 1625091 - The WSDL URL for web service which generated in SAP Enterprise Central Component cannot be loaded into Xcelsius
regards,
H

Similar Messages

  • Data connection from SAP-R3 System to Xcelsius using Web Services

    Hello Everybody,
    Anyone tryed connecting data from SAP-R3 System to Xcelsius using Webservices? (created in ABAP function module)
    SDN downloaded document says to Generate Webservice URL through ABAP (by creating function module) and import it in xcelsius
    Data -> Add Web service connections
    by giving the URL to import. After giving the web server login credentials, the error says 'Unable to load URL'
    Any idea would be great help
    Note: I tried by following the thread & its not working:
    http://forums.sdn.sap.com/thread.jspa?threadID=1520321
    Thank you,
    Anand
    Edited by: Anand Amirtharaj on Feb 20, 2012 7:51 AM
    Edited by: Anand Amirtharaj on Feb 20, 2012 7:53 AM

    Hi,
    With regards to your statemetn "SDN downloaded document says to Generate Webservice URL through ABAP"   <- can you tell me more please? references/links/attachment?
    As far as I am aware, that the type of web service required for integration it a 'normal' Netweaver Web app server web service.
    There are limitations about the complexity of the WSDL - see Notes:
    1653655 - Limitations in Web Service WSDL URL usage in Xcelsius 4.0
    1703839 - Limitations of Web service usage in Xcelsius / Dashboard Design
    also , changes between SAP versions requires reworking the WSDL
    Note 1625091 - The WSDL URL for web service which generated in SAP Enterprise Central Component cannot be loaded into Xcelsius
    regards,
    H

  • External Web Service as Legacy System

    Hi,
    when I use a File -> XI -> JDBC scenario, I have to define into XI (using a particular transaction...) the FTP server from which XI has to consume the XML source files. Now... I have to do the same if I use a web service instead of a File as source message? I have to define in XI the IP of webservice in a particular transaction, for example, as a Legacy System?
    Thanks to all!!!

    hi,
    >>>> I have to do the same if I use a web service instead of a File as source message?
    no, as file and web service are two different adapter
    file works on pull method )so it check every few minutes if the file exists - if it does it takes it
    web service waits for the call from a web service client (it cannot do any pulling)
    so you cannot assing any IP of this web service in directory
    Regards,
    michal
    <a href="/people/michal.krawczyk2/blog/2005/06/28/xipi-faq-frequently-asked-questions"><b>XI / PI FAQ - Frequently Asked Questions</b></a>

  • ABAP source code to connect to third party systems using web service calls?

    Hi all,
              can any one provide an example ABAP source code to connect to third party systems using web service calls? The base system is CRM.

    Do you want to call a web service in a remote system, or do you want to provide a web service?
    If you want to call a web service you should create a proxy object via SE80. Open your development package, right click on the tree entry and choose: Create -> Enterprise Service / Web Service -> Proxy Object and provide the needed information (including the WSDL description file). You may then use the proxy object to call the web service (if the connection and everything else works right).
    See [http://help.sap.com/saphelp_nw04/helpdata/en/9b/dad1ae3908ee44a5caf57e10918be9/content.htm|http://help.sap.com/saphelp_nw04/helpdata/en/9b/dad1ae3908ee44a5caf57e10918be9/content.htm]

  • Error While generating Web Service Proxy using Web Service Action in MII 12

    Hi All,
    We are using the Web Service action block in BLS transaction to call a web service from an external legacy system. When we provide the WSDL in the action block configuration and click Next we can see the Port and Operation of the web service which we have selected and finally clicked on Finish. On clicking Finish it is giving an error "[Fatal Error] :-1:-1: Premature end of file." and no web service request/response structures are being generated.
    The WSDL file is attached herwith. Please check and provide the solution. We are using MII 12.2 SP02 with latest patch.
    An error message is also added to the NetWeaver log as below:
    XmlProxy Error: Premature end of file.
    [EXCEPTION]
    org.xml.sax.SAXParseException: Premature end of file.
    at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:264)
    at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:292)
    at com.sap.lhcommon.schema.XmlHelper.loadDocument(XmlHelper.java:38)
    at com.sap.lhcommon.schema.XmlHelper.loadDocumentNS(XmlHelper.java:28)
    at com.sap.lhcommon.webservice.SoapMessage.getExampleXmlAsBytes(SoapMessage.java:103)
    at com.sap.xmii.servlet.XmlProxy.service(XmlProxy.java:204)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.runServlet(FilterChainImpl.java:162)
    at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:81)
    at com.sap.xmii.system.SecurityFilter.doFilter(SecurityFilter.java:96)
    at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:73)
    at com.sap.xsrf.filter.XSRFProtectorFilter.doFilter(XSRFProtectorFilter.java:62)
    at com.sap.engine.services.servlets_jsp.server.runtime.FilterChainImpl.doFilter(FilterChainImpl.java:73)
    at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:468)
    at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:298)
    at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:399)
    at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:388)
    at com.sap.engine.services.servlets_jsp.filters.DSRWebContainerFilter.process(DSRWebContainerFilter.java:48)
    at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at com.sap.engine.services.servlets_jsp.filters.ServletSelector.process(ServletSelector.java:84)
    at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at com.sap.engine.services.servlets_jsp.filters.ApplicationSelector.process(ApplicationSelector.java:244)
    at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at com.sap.engine.services.httpserver.filters.WebContainerInvoker.process(WebContainerInvoker.java:78)
    at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at com.sap.engine.services.httpserver.filters.ResponseLogWriter.process(ResponseLogWriter.java:60)
    at com.sap.engine.services.httpserver.chain.HostFilter.process(HostFilter.java:9)
    at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at com.sap.engine.services.httpserver.filters.DefineHostFilter.process(DefineHostFilter.java:27)
    at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at com.sap.engine.services.httpserver.filters.MonitoringFilter.process(MonitoringFilter.java:29)
    at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at com.sap.engine.services.httpserver.filters.MemoryStatisticFilter.process(MemoryStatisticFilter.java:43)
    at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at com.sap.engine.services.httpserver.filters.DSRHttpFilter.process(DSRHttpFilter.java:42)
    at com.sap.engine.services.httpserver.chain.ServerFilter.process(ServerFilter.java:12)
    at com.sap.engine.services.httpserver.chain.AbstractChain.process(AbstractChain.java:78)
    at com.sap.engine.services.httpserver.server.Processor.chainedRequest(Processor.java:428)
    at com.sap.engine.services.httpserver.server.Processor$FCAProcessorThread.process(Processor.java:247)
    at com.sap.engine.services.httpserver.server.rcm.RequestProcessorThread.run(RequestProcessorThread.java:45)
    at com.sap.engine.core.thread.execution.Executable.run(Executable.java:122)
    at com.sap.engine.core.thread.execution.Executable.run(Executable.java:101)
    at com.sap.engine.core.thread.execution.CentralExecutor$SingleThread.run(CentralExecutor.java:327)
    The wsdl file is as follows:
    <wsdl:definitions
    targetNamespace="urn:cat.cis.mesassembly.server.service.pod"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:tns="http://pod.service.server.mesassembly.cis.cat"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:apachesoap="http://xml.apache.org/xml-soap"
    xmlns:intf="urn:cat.cis.mesassembly.server.service.pod"
    xmlns:impl="urn:cat.cis.mesassembly.server.service.pod"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding"
    >
    <wsdl:types>
       <schema targetNamespace="http://pod.service.server.mesassembly.cis.cat"
       xmlns="http://www.w3.org/2001/XMLSchema">
       <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
       <complexType name="ProductionOrderDetailsInput">
       <sequence>
         <element name="detailsString" type="xsd:base64Binary"/>
         <element name="productionOrderNumber" nillable ="true" type="xsd:string"/>
         <element name="fullExplosionFlag" type="xsd:string"/> 
       </sequence>
       </complexType>
       <complexType name="ProductionOrderDetailsReceipt">
       <sequence>
         <element name="errorMessage" nillable="true" type="xsd:string"/>
         <element name="valid" type="xsd:boolean"/>
       </sequence>
       </complexType>
       </schema>
    </wsdl:types>
    <wsdl:message name="processOrderDetailsResponse">
      <wsdl:part name="podReturn" type="tns:ProductionOrderDetailsReceipt" />
    </wsdl:message>
    <wsdl:message name="processOrderDetailsRequest">
      <wsdl:part name="input" type="tns:ProductionOrderDetailsInput" />
    </wsdl:message>
      <wsdl:portType name="PodService">
        <wsdl:operation name="ProcessOrderDetails" parameterOrder="input">
          <wsdl:input message="impl:processOrderDetailsRequest"
          name="processOrderDetailsRequest"/>
          <wsdl:output message="impl:processOrderDetailsResponse"
          name="processOrderDetailsResponse"/>
        </wsdl:operation>
      </wsdl:portType>
      <wsdl:binding name="ProdOrderDetailsSoapBinding" type="impl:PodService">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="ProcessOrderDetails">
          <soap:operation soapAction="http://pod.service.server.mesassembly.cis.cat/NewOperation"/>
          <wsdl:input name="processOrderDetailsRequest">
            <soap:body  use="literal"  encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:cat.cis.mesassembly.server.service.pod"  />
          </wsdl:input>
          <wsdl:output name="processOrderDetailsResponse">
            <soap:body  use="literal" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:cat.cis.mesassembly.server.service.pod"  />
          </wsdl:output>
        </wsdl:operation>
      </wsdl:binding>
      <wsdl:service name="PodService_Service">
        <wsdl:port binding="impl:ProdOrderDetailsSoapBinding" name="ProdOrderDetails">
          <soap:address location="http:/localhost:8080/MESAssembly/services/ProdOrderDetails"/>
        </wsdl:port>
      </wsdl:service>
    </wsdl:definitions>

    The WSDL file is as follows:
    <?xml version="1.0" encoding="UTF-8"?>
    <wsdl:definitions
    targetNamespace="urn:cat.cis.mesassembly.server.service.pod"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:tns="http://pod.service.server.mesassembly.cis.cat"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:apachesoap="http://xml.apache.org/xml-soap"
    xmlns:intf="urn:cat.cis.mesassembly.server.service.pod"
    xmlns:impl="urn:cat.cis.mesassembly.server.service.pod"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding"
    >
    <wsdl:types>
       <schema targetNamespace="http://pod.service.server.mesassembly.cis.cat"
       xmlns="http://www.w3.org/2001/XMLSchema">
       <import namespace="http://schemas.xmlsoap.org/soap/encoding/"/>
       <complexType name="ProductionOrderDetailsInput">
       <sequence>
         <element name="detailsString" type="xsd:base64Binary"/>
         <element name="productionOrderNumber" nillable ="true" type="xsd:string"/>
         <element name="fullExplosionFlag" type="xsd:string"/> 
       </sequence>
       </complexType>
       <complexType name="ProductionOrderDetailsReceipt">
       <sequence>
         <element name="errorMessage" nillable="true" type="xsd:string"/>
         <element name="valid" type="xsd:boolean"/>
       </sequence>
       </complexType>
       </schema>
    </wsdl:types>
    <wsdl:message name="processOrderDetailsResponse">
      <wsdl:part name="podReturn" type="tns:ProductionOrderDetailsReceipt" />
    </wsdl:message>
    <wsdl:message name="processOrderDetailsRequest">
      <wsdl:part name="input" type="tns:ProductionOrderDetailsInput" />
    </wsdl:message>
      <wsdl:portType name="PodService">
        <wsdl:operation name="ProcessOrderDetails" parameterOrder="input">
          <wsdl:input message="impl:processOrderDetailsRequest"
          name="processOrderDetailsRequest"/>
          <wsdl:output message="impl:processOrderDetailsResponse"
          name="processOrderDetailsResponse"/>
        </wsdl:operation>
      </wsdl:portType>
      <wsdl:binding name="ProdOrderDetailsSoapBinding" type="impl:PodService">
        <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
        <wsdl:operation name="ProcessOrderDetails">
          <soap:operation soapAction="http://pod.service.server.mesassembly.cis.cat/NewOperation"/>
          <wsdl:input name="processOrderDetailsRequest">
            <soap:body  use="literal"  encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:cat.cis.mesassembly.server.service.pod"  />
          </wsdl:input>
          <wsdl:output name="processOrderDetailsResponse">
            <soap:body  use="literal" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="urn:cat.cis.mesassembly.server.service.pod"  />
          </wsdl:output>
        </wsdl:operation>
      </wsdl:binding>
      <wsdl:service name="PodService_Service">
        <wsdl:port binding="impl:ProdOrderDetailsSoapBinding" name="ProdOrderDetails">
          <soap:address location="http:/localhost:8080/MESAssembly/services/ProdOrderDetails"/>
        </wsdl:port>
      </wsdl:service>
    </wsdl:definitions>

  • Using Web Service from LiveCycle PDF Dynamic Form.

    I have developed Staff Attendance Sheet about 7 years ago using Microsoft Office Web Componenets Data Access Pages (OWC DAP).
    See image below of the current report using OWC DAP:
    http://bit.ly/cAfeYs
    Since we are moving our legacy systems to SAP, this report will have to be re-implemented using Adobe LiveCycle PDF which is connecting to Web Service over SAP Systems (since OWC does not connect to Web Service).
    The SAP development team have developed the initial webservice which generates the required data.
    I have developed the initial version of the LiveCycle PDF, which can be downloaded from this link:
    http://bit.ly/9KBgm0
    The following is a screen snapshot of the LC Desinger Form:http://bit.ly/cxMK62
    When the web service is executed from inside PDF the result looks as follows:
    http://bit.ly/cacbCg
    The webservice accepts the following required parameters:
    1. Period: YYYYMM. User Specified Value.
    2. Staff ID: 9999999. It must be supplied automatcially to the web service and it must be the Windows ID of the User Logged In to Windows
    Domain.
    Other parameters are optional.
    Assumptions:
    ==========
    1. I am not using any Adobe Forms Server Technology. I can use LiveCycle Desinger ES2 and LiveCycle Reader Extensions Server.
    2. I can alse develop using .NET to get the Logged In User ID (Windows), generate the XDP from ASPX Page and attach the XML to the XDP.
    3. We are using IE8 with Adobe Reader 9 Plugin (IE add-on) to display LiveCycle PDF inside IE.
    Questions:
    ========
    1. First time the webservice is executed, I will get a prompt to allow/deny execution of the webservice. This is a security issue here, becuase we do not want any user to know the link to the Web Service. How we can hide the link to the webservice and prevent any user from getting the link ?
    2. How I can stop the Prompt to Allow/Deny execution to the Web Service for good ? As you know, users will get confused, and when we launch this PDF, it will generate a lot of calls to the Service Desk (more than 1000 users).
    3. The Web Service uses Simple User Name/Password for authentication to run the webservice. I need to embed the User Name/Password inside
    the PDF, and also prevent any user for getting them, how ?
    4. I want to send the Staff ID Parameter to the Web Service Automatically which is the Logged In User ID (Windows). This is the same value of the "Login Name" which can be accessed using Acrobat JavaScript. But the problem, this script must be trusted, and it will be a long story. Any ideas how to implement this requirement using simple methods ?
    5. If I manage to send the Staff ID Parameter to the Webservice automatically (Logged In User ID), also, I want to prevent the user from sending a different user ID, ie, prevent him from using Import Data to Form to specify a Different User ID for the Webservice Parameter. How ?
    I appreciate your help if you have any ideas about the above.
    Tarek.

    Hi Tarek,
    First of all, Thank for your replying.
    I have developing Adobe LiveCycle xdp form with a button. The SAP Web Service will be called when the button is pressed.
    Before that, I ‘m able to call another ASP.NET web services by using SOAP.request call. However, when I apply the code to call SAP web service, it doesn’t work. I checked that the web service is valid. And I found that there is something wrong when implementing the SOAP.request call. But I have no idea what wrong is it. So, I beg your help
    The following is the code in the click event of the button:
    //mainData.sfMain.Button7[1]::click - (JavaScript, client)
        var webServiceEndPoint = "http://xxxxxxx.xxxxxxx.com:8000/sap/bc/srt/wsdl/bndg_DEDB492BB032E7F1B09F001CC4FBCEC9/wsdl11/allinone/ws_policy/document?s ap-client=300";
        var staffIDInput = "9999999";
        var oAuthenticator = {
        Username: "usr",
        Password: "pw"
    app.alert("1");
        var response = SOAP.request({
           bEncoded: false,
           cResponseStyle: SOAPMessageStyle.Message,
           cURL: webServiceEndPoint,
           oRequest: {"urn:Z_RFC_GET_STAFF_BANK_INFO":{A_STAFF_ID: staffIDInput}},
             cAction: "urn:sap-com:document:sap:rfc:functions",
            oAuthenticate: oAuthenticator
    app.alert("2");
    WSDL is shown as follow:
    <?xml version="1.0" encoding="utf-8" ?>
    - <wsdl:definitions targetNamespace="urn:sap-com:document:sap:rfc:functions" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="urn:sap-com:document:sap:rfc:functions" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    - <wsdl:documentation>
    <sidl:sidl xmlns:sidl="http://www.sap.com/2007/03/sidl" />
    </wsdl:documentation>
    <wsp:UsingPolicy wsdl:required="true" />
    - <wsp:Policy wsu:Id="BN_ZWS_ALC_GET_STAFF_BANK_INFO">
    - <wsp:ExactlyOne xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:sapsp="http://www.sap.com/webas/630/soap/features/security/policy" xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility">
    - <wsp:All>
    - <sp:TransportBinding>
    - <wsp:Policy>
    - <sp:TransportToken>
    - <wsp:Policy>
    <sp:HttpsToken />
    </wsp:Policy>
    </sp:TransportToken>
    - <sp:AlgorithmSuite>
    - <wsp:Policy>
    <sp:TripleDesRsa15 />
    </wsp:Policy>
    </sp:AlgorithmSuite>
    - <sp:Layout>
    - <wsp:Policy>
    <sp:Strict />
    </wsp:Policy>
    </sp:Layout>
    </wsp:Policy>
    </sp:TransportBinding>
    </wsp:All>
    </wsp:ExactlyOne>
    <saptrnbnd:OptimizedXMLTransfer uri="http://xml.sap.com/2006/11/esi/esp/binxml" xmlns:saptrnbnd="http://www.sap.com/webas/710/soap/features/transportbinding/" wsp:Optional="true" />
    </wsp:Policy>
    - <wsp:Policy wsu:Id="IF_ZWS_ALC_GET_STAFF_BANK_INFO">
    - <sapsession:Session xmlns:sapsession="http://www.sap.com/webas/630/soap/features/session/">
    <sapsession:enableSession>false</sapsession:enableSession>
    </sapsession:Session>
    <wsp:ExactlyOne xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:sapsp="http://www.sap.com/webas/630/soap/features/security/policy" xmlns:sp="http://docs.oasis-open.org/ws-sx/ws-securitypolicy/200702" xmlns:wsa="http://www.w3.org/2005/08/addressing" xmlns:wsu="http://schemas.xmlsoap.org/ws/2002/07/utility" />
    </wsp:Policy>
    - <wsp:Policy wsu:Id="OP_Z_RFC_GET_STAFF_BANK_INFO">
    <sapcomhnd:enableCommit xmlns:sapcomhnd="http://www.sap.com/NW05/soap/features/commit/">false</sapcomhnd:enableCommit>
    <sapblock:enableBlocking xmlns:sapblock="http://www.sap.com/NW05/soap/features/blocking/">true</sapblock:enableBlocking>
    <saptrhnw05:required xmlns:saptrhnw05="http://www.sap.com/NW05/soap/features/transaction/">no</saptrhnw05:required>
    <saprmnw05:enableWSRM xmlns:saprmnw05="http://www.sap.com/NW05/soap/features/wsrm/">false</saprmnw05:enableWSRM>
    </wsp:Policy>
    - <wsdl:types>
    - <xsd:schema attributeFormDefault="qualified" targetNamespace="urn:sap-com:document:sap:rfc:functions">
    - <xsd:element name="Z_RFC_GET_STAFF_BANK_INFO">
    - <xsd:complexType>
    - <xsd:sequence>
    <xsd:element name="A_STAFF_ID" type="xsd:string" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    - <xsd:element name="Z_RFC_GET_STAFF_BANK_INFOResponse">
    - <xsd:complexType>
    - <xsd:sequence>
    <xsd:element name="L_BANK_ACC" type="xsd:string" />
    <xsd:element name="L_BANK_ACC_HOLDER" type="xsd:string" />
    <xsd:element name="L_BANK_NAME" type="xsd:string" />
    </xsd:sequence>
    </xsd:complexType>
    </xsd:element>
    </xsd:schema>
    </wsdl:types>
    - <wsdl:message name="Z_RFC_GET_STAFF_BANK_INFO">
    <wsdl:part name="parameters" element="tns:Z_RFC_GET_STAFF_BANK_INFO" />
    </wsdl:message>
    - <wsdl:message name="Z_RFC_GET_STAFF_BANK_INFOResponse">
    <wsdl:part name="parameter" element="tns:Z_RFC_GET_STAFF_BANK_INFOResponse" />
    </wsdl:message>
    - <wsdl:portType name="ZWS_ALC_GET_STAFF_BANK_INFO">
    - <wsp:Policy>
    <wsp:PolicyReference URI="#IF_ZWS_ALC_GET_STAFF_BANK_INFO" />
    </wsp:Policy>
    - <wsdl:operation name="Z_RFC_GET_STAFF_BANK_INFO">
    - <wsp:Policy>
    <wsp:PolicyReference URI="#OP_Z_RFC_GET_STAFF_BANK_INFO" />
    </wsp:Policy>
    <wsdl:input message="tns:Z_RFC_GET_STAFF_BANK_INFO" />
    <wsdl:output message="tns:Z_RFC_GET_STAFF_BANK_INFOResponse" />
    </wsdl:operation>
    </wsdl:portType>
    - <wsdl:binding name="ZWS_ALC_GET_STAFF_BANK_INFO" type="tns:ZWS_ALC_GET_STAFF_BANK_INFO">
    - <wsp:Policy>
    <wsp:PolicyReference URI="#BN_ZWS_ALC_GET_STAFF_BANK_INFO" />
    </wsp:Policy>
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document" />
    - <wsdl:operation name="Z_RFC_GET_STAFF_BANK_INFO">
    <soap:operation soapAction="" style="document" />
    - <wsdl:input>
    <soap:body use="literal" />
    </wsdl:input>
    - <wsdl:output>
    <soap:body use="literal" />
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    - <wsdl:service name="service">
    - <wsdl:port name="ZWS_ALC_GET_STAFF_BANK_INFO" binding="tns:ZWS_ALC_GET_STAFF_BANK_INFO">
    <soap:address location="http://xxxxxxx.xxxxxxx.com:8000/sap/bc/srt/rfc/sap/zws_alc_get_staff_bank_info/300/zws_alc _get_staff_bank_info/zws_alc_get_staff_bank_info" />
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>

  • Web AS  uses Web Services

    Hi
    SAP WebAS uses Web Services to run What sort of Webservices it uses.How Web Servies help SAP Netweaver and name of Web Services are used by SAP Netweaver?
    Rrgards
    Vji

    Hi Vijay,
           Create a EJB Project develop the business logic in it(accesing backend) and expose the EJB as web service deploy to the WAS. In WAS you find the WSDL file. WSDL file name is the web service name.
           SAP Netweaver Webdynpro mainly used for GUI part. It has one option called generate model from Web service(WSDL) using that generate model access the back end system.
           From Exchange Infrastructure(XI) also we can invoke the web services(WSDL).
    see this link for more information:
    <a href="http://help.sap.com/saphelp_nw04/helpdata/en/08/11703e5da3e946e10000000a114084/frameset.htm">Here</a>
    Regards, Suresh KB

  • Novice Help with Creating Opportunities Using Web Services 2.0

    Hello,
    I recently took over our CRM integration services and was asked to push some data via our custom portal.
    We use our portal to automate the creation of new opportunities in our Oracle CRM System.
    The code was developed using Web Services 1.0
    I was recently asked to add data to the "Parent Opportunity" field upon creation of a new Opportunity. Now I may be mistaken and if I am I will be very pleased, but it seems to me this field isn't available in 1.0
    If I am mistaken and there IS a way to push data to the "parent opportunity" field using 1.0 Please completely disregard what I have typed below.
    Upon looking at the WSLD for 2.0 I see "ParentoptyID" as an available field.
    I took it upon myself to try and move this process over to 2.0 but I have hit a few major stumbling blocks. Here is the working code for 1.0:
    Public Function CRMAddFinalShipmentOpportunity2(ByVal Session As Session, ByVal Subject As String, ByVal Type As String, ByVal Priority As String, ByVal Account As String, ByVal DueDate As String, ByVal Status As String, ByVal Description As String, ByVal AnnBudget As String, ByVal oppType As String, ByVal partNumber As String, ByVal currency As String, ByVal Territory As String, ByVal Owner As String, ByVal Opp As String) As String
    Dim opportunity As nkkcrm.SiebelOpportunity20.Opportunity = New nkkcrm.SiebelOpportunity20.Opportunity
    Dim input As New nkkcrm.SiebelOpportunity20.OpportunityInsert_Input
    Dim results As New nkkcrm.SiebelOpportunity20.OpportunityInsert_Output
    Dim strPriority As String = "1-High,2-Medium,3-Low"
    Dim strType As String = "Call,Correspondence,Email,Event,Final Shipment - Book,Final Shipment - Special,Lead Follow-Up,Meeting,Opportunity Follow-Up,Other,Presentation,Quote Follow-Up,Sample Follow-Up,Service Request Follow-Up"
    Dim strStatus As String = "Completed,Deferred,Waiting For Someone Else,In Progress,Not Started,Assigned,In Call"
    CRMAddFinalShipmentOpportunity2 = ""
    ' Validate Data (CRM will validate if owner is valid)
    If Owner = "" Then
    AddError("Error: Missing Owner")
    Exit Function
    End If
    If Subject = "" Then
    AddError("Error: Missing Subject")
    Exit Function
    End If
    If strType.IndexOf(Type) < 0 Then
    AddError("Error: Invalid or Missing Type")
    Exit Function
    End If
    If strStatus.IndexOf(Status) < 0 Then
    AddError("Error: Invalid or Missing Status")
    Exit Function
    End If
    If strPriority.IndexOf(Priority) < 0 Then
    AddError("Error: Invalid or Missing Priority")
    Exit Function
    End If
    If Not IsDate(DueDate) Then
    AddError("Error: Invalid or Missing DueDate")
    Exit Function
    End If
    Try
    opportunity.Url = Session.GetURL()
    opportunity.CookieContainer = Session.GetCookieContainer()
    'Create the opportunity
    Dim tmpAry(0) As nkkcrm.SiebelOpportunity20.Opportunity
    input.ListOfOpportunity(0) = tmpAry
    input.ListOfOpportunity.SetValue(New nkkcrm.SiebelOpportunity20.Opportunity, 0)
    'Assign the opportunity Properties
    input.ListOfOpportunity(0).Owner = Owner
    input.ListOfOpportunity(0).OpportunityName = Subject
    input.ListOfOpportunity(0).AccountName = Account
    input.ListOfOpportunity(0).SalesStage = "Rebuy"
    input.ListOfOpportunity(0).CloseDate = Date.Today
    input.ListOfOpportunity(0).Territory = Territory
    input.ListOfOpportunity(0).stProject_Name = "FINAL SHIPMENT REBUY"
    input.ListOfOpportunity(0).SourceCampaign = "Rebuy"
    input.ListOfOpportunity(0).OpportunityType = oppType
    input.ListOfOpportunity(0).Revenue = AnnBudget
    input.ListOfOpportunity(0).Description = Description
    input.ListOfOpportunity(0).bRebuy = "Y"
    input.ListOfOpportunity(0).ProductInterest = partNumber
    input.ListOfOpportunity(0).plCurrency_Type = currency
    'input.ListOfOpportunity(0).ParentoptyId = Opp
    'insert the opportunity
    results = opportunity.OpportunityInsert(input)
    If results.ListOfOpportunity.Length > 0 Then
    CRMAddFinalShipmentOpportunity2 = results.ListOfOpportunity(0).OpportunityId
    End If
    Catch webex As WebException
    AddError(webex.Message)
    Catch ex As Exception
    AddError(ex.Message)
    End Try
    End Function
    What changes might I need to make in order to make this function correctly using Web Services 2.0?
    Currently I get the following errors- For every line of input.ListOfOpportunity(0) I get: '..cannot be indexed because it has no default property.'
    Another example of an issue I'm running into is: 'SetValue' is not a member of 'nkkcrm.SiebelOpportunity20.ListOfOpportunityData'

    We were able to make this work by re-modeling my code after a code sample I found that creates new Activities.
    Here's my code in case it helps someone scanning these forums in the future (Disregard the Opportunity entries that are missing when you compare this to my earlier code- Those weren't relevant to making this work or not work, I simply am not using them now.):
    Public Function CRMAddFinalShipmentOpportunity2(ByVal Session As Session, ByVal Owner As String, ByVal Subject As String, ByVal Type As String, ByVal Priority As String, ByVal DueDate As String, ByVal Status As String, ByVal Description As String, ByVal POValue As String, ByVal oppType As String, ByVal partNumber As String, ByVal currency As String, ByVal servername As String, ByVal pass As String, ByVal usrname As String) As String
    'Get SessionID
    Dim sessionId As String
    sessionId = getSessionLogin(usrname, pass, servername)
    Dim Opportunity As nkkcrm.SiebelOpportunity20.Opportunity = New nkkcrm.SiebelOpportunity20.Opportunity
    Dim OppInput As New nkkcrm.SiebelOpportunity20.OpportunityInsert_Input
    Dim OppOutput As New nkkcrm.SiebelOpportunity20.OpportunityInsert_Output
    Dim strPriority As String = "1-High,2-Medium,3-Low"
    Dim strType As String = "Call,Correspondence,Email,Event,Final Shipment - Book,Final Shipment - Special,Lead Follow-Up,Meeting,Opportunity Follow-Up,Other,Presentation,Quote Follow-Up,Sample Follow-Up,Service Request Follow-Up"
    Dim strStatus As String = "Completed,Deferred,Waiting For Someone Else,In Progress,Not Started,Assigned,In Call"
    'Validate Data (CRM will validate if owner is valid)
    If Owner = "" Then
    AddError("Error: Missing Owner")
    Exit Function
    End If
    If Subject = "" Then
    AddError("Error: Missing Subject")
    Exit Function
    End If
    If strType.IndexOf(Type) < 0 Then
    AddError("Error: Invalid or Missing Type")
    Exit Function
    End If
    If strStatus.IndexOf(Status) < 0 Then
    AddError("Error: Invalid or Missing Status")
    Exit Function
    End If
    If strPriority.IndexOf(Priority) < 0 Then
    AddError("Error: Invalid or Missing Priority")
    Exit Function
    End If
    If Not IsDate(DueDate) Then
    AddError("Error: Invalid or Missing DueDate")
    Exit Function
    End If
    'Instantiate OpportunityData
    Dim objListOfOpportunity As nkkcrm.SiebelOpportunity20.ListOfOpportunityData
    Dim objOpportunity As nkkcrm.SiebelOpportunity20.OpportunityData()
    Try
    objOpportunity = New nkkcrm.SiebelOpportunity20.OpportunityData(0) {}
    objListOfOpportunity = New nkkcrm.SiebelOpportunity20.ListOfOpportunityData()
    objOpportunity(0) = New nkkcrm.SiebelOpportunity20.OpportunityData
    'Assign the opportunity Properties
    objOpportunity(0).Owner = Owner
    objOpportunity(0).OpportunityName = Subject
    objOpportunity(0).AccountName = "UNKNOWN"
    objOpportunity(0).SalesStage = "Rebuy"
    objOpportunity(0).CloseDate = Date.Today
    objOpportunity(0).Territory = "North America"
    objOpportunity(0).stProject_Name = "FINAL SHIPMENT REBUY"
    objOpportunity(0).SourceCampaign = "Rebuy"
    objOpportunity(0).OpportunityType = oppType
    objOpportunity(0).Revenue = POValue
    objOpportunity(0).Description = Description
    objOpportunity(0).bRebuy = True
    objOpportunity(0).ProductInterest = partNumber
    objOpportunity(0).plCurrency_Type = currency
    'Connect the Opportunity to ListOfOpportunity
    objListOfOpportunity.Opportunity = objOpportunity
    'Connect ListofOpportunity to Input Parameter
    OppInput.ListOfOpportunity = objListOfOpportunity
    Opportunity.Url = servername & "/Services/Integration;jsessionid=" & sessionId
    'Opportunity.CookieContainer = Session.GetCookieContainer()
    Opportunity.OpportunityInsert(OppInput)
    Return "success"
    Catch webex As WebException
    AddError(webex.Message)
    Catch ex As Exception
    AddError(ex.Message)
    End Try
    End Function
    Public Function getSessionLogin(ByVal usrname As String, ByVal pass As String, ByVal servername As String)
    Dim loginurl As String = servername & "/Services/Integration?command=login"
    'MessageBox.Show(loginurl);
    Dim req As HttpWebRequest = DirectCast(WebRequest.Create(loginurl), HttpWebRequest)
    ' username and password are passed as HTTP headers
    req.Headers.Add("UserName", usrname)
    req.Headers.Add("Password", pass)
    ' cookie container has to be added to request in order to
    ' retrieve the cookie from the response.
    Dim cookie As Cookie
    req.CookieContainer = New CookieContainer()
    ' make the HTTP callby
    Dim resp As HttpWebResponse = DirectCast(req.GetResponse(), HttpWebResponse)
    If resp.StatusCode = System.Net.HttpStatusCode.OK Then
    ' store cookie for later...
    cookie = resp.Cookies("JSESSIONID")
    If cookie Is Nothing Then
    Return "invalid session"
    End If
    Return cookie.Value
    Else
    Return "invalid session"
    End If
    End Function

  • Why should I use Web Services?

    I am managing an Internet project for my company. We exhaustively use IIS, ASP and SQL 2000 Server and until today we feel very comfortable with those tools. We successfully developed some COMs also to make additional work. As a personal interest in my free time I am learning Java. I began two months ago and using certain APIs downloaded from the net I could develope applications and applets for an SMS messaging system interacting with a real cellular phone provider. I also had to learn about RMI and implement it in this project. That system now is working nice. So I was encouraged to learn more about Java and I found the Web Services world. Everybody is talking about it(and .NET of course), in the net, in magazines etc.. So, I decided to learn about Web Services.
    I read these paragraphs at the beginning of the Web Services Tutorial:
    "In a typical Web services scenario, a business application sends a request to a service at a given URL using the SOAP protocol over HTTP. The service receives the request, processes it, and returns a response. An often-cited example of a Web service is that of a stock quote service, in which the request asks for the current price of a specified stock, and the response gives the stock price. This is one of the simplest forms of a Web service in that the request is filled almost immediately, with the request and response being parts of the same method call."
    Maybe I am not able to understand the concept but this is more or less what I get using for example an ASP or an RMI or a Servlet, don't I?. Ok, there is no SOAP involved in those methods mentioned but still I have a request, and response and so on. So, what is the advantage I will get working with a Web Service?. Can anybody explain me?
    Regards,

    Here are a few reasons why. Enjoy!!
    A
    What Can Amazon Web Services Be Used For?
    Although Amazon Web Services is a cool technology, it also provides the very useful function of enabling business partners to interact with Web site through standard protocols. This interaction can lead to a deeper, more valuable relationship for parties involved. Here are a few of the ways that partners are benefiting from Web Services:
    Associates: Associates program enables Web sites to link to Amazon.com and earn referral fees for sales that they drive through their links. Many Associates are now using Web Services to build more effective links to our store, thus enhancing their sites and earning more money.
    Sellers and Vendors: Amazon.com has thousands of third-party sellers who offer their products on our Web site. Using Web Services, these sellers can more easily manage large quantities of inventory on our platform, and download the latest product information to make sure that their products are competitively priced.
    Developers: Among the thousands of developers who have signed up to our Web Services program, many are now creating solutions to help other people work with Amazon. These solutions are powered using our Web Services APIs.
    www.amazon.com/gp/aws/landing.html

  • Exception thrown while trying to connect to Primavera using Web service.

    Dear all,
         We are trying to connect primavera from a .net application using Web service.It is working fine with P6 V7, but while trying to connect to V.8 there is an exception thrown by SoapHeaderException.
    The Contents in the Exception is like this
    System.Web.Services.Protocols.SoapHeaderException: This class does not support SAAJ 1.1
       at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
       at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
       at Primavera.AuthenticationService.AuthenticationService.Login(Login Login1) in E:\Manesh\Code\PROTOTYPES\PrimaveraAuthentrication\SampleDemo\Web References\AuthenticationService\Reference.cs:line 100
       at Primavera.Form1.TestConnection(String& sErr) in E:\Manesh\Code\PROTOTYPES\PrimaveraAuthentrication\SampleDemo\Form1.cs:line 66
    Here i am specifying the C# code which makes the above exception
    public int TestConnection(ref string sErr)
                try
                    AuthenticationService.AuthenticationService authService = new AuthenticationService.AuthenticationService();               
                    try
                        authService.Url = Url;
                        authService.CookieContainer = new CookieContainer();
                        AuthenticationService.Login lg = new AuthenticationService.Login();
                        lg.UserName = LoginName;
                        lg.Password = Password;
                        lg.DatabaseInstanceId = 1;
                        lg.DatabaseInstanceIdSpecified = true;
                       AuthenticationService.LoginResponse lp = authService.Login(lg);   //This line which makes the exception
                        cookieContainer = authService.CookieContainer;                  
                    finally
                        if (authService != null)
                            authService.Dispose();                  
                    return 1;               
                catch (Exception eX)
                    return -1;
    We are looking forward for a solution
    Thanks in Advance.
    Regards
    Jinosh

    http://otn.oracle.com/tech/java/sqlj_jdbc/htdocs/jdbc_faq.htm#_59_
    The thin drivers are classes12.zip/classes111.zip. classes12.zip being the most recent release. You can download it from
    http://otn.oracle.com/software/tech/java/sqlj_jdbc/htdocs/winsoft.html
    (the general download site is http://otn.oracle.com/software/tech/java/sqlj_jdbc/content.html )
    Jamie

  • Q: General : When will you use Web Service as opposed to just Servlet and/or EJB?

    Hi,
    I don't know if this is an appropriate question to ask for this class as it's not
    workshop
    specific. I was wondering how will I decide when it is appropriate to use a web
    service as opposed to say servlet or an EJB for my application? What is a good
    rationale to use?
    Thanks,
    Sadhana

    Hi Adam,
    Thanks a lot for giving such a lucid explanation of my vague question!
    I understand now the difference between when to use EJBs/Servlets/Web Services.
    Thanks again!
    Sadhana
    "Adam FitzGerald" <[email protected]> wrote:
    >
    Hi Sadhana,
    Web service versus Servlet versus EJB. Which one to use? That is a very
    good question.
    EJBs should be the core desription and processing of your business rules.
    They generally
    have good performance, are easy to integrate into your security set up but
    they require
    access using the RMI-IIOP protocol. This means that generally EJBs are not
    accessible
    outside of your firewall and their clients have to be written in Java (other
    enterprise
    objects or applets or GUI applications).
    Servlets often form a web-based front end to EJBs. They also have good performance,
    integrate into security and only require HTTP access. This means they are
    accessible
    outside your firewall and any client with a HTTP or web API can call on
    them, however,
    there is no standard contract or rules for this type of interaction so you
    will need
    provide direct input into development of the client.
    Web services are also accessible via HTTP and so can be accessed from outside
    your
    firewall. In fact, Web services internally within Workshop and WebLogic
    actually
    operate by using servlets and EJBs but the main advantage is that the mechanism/contract
    for interacting with the web service is a well defined standard (WSDL) and
    can actually
    be registered or retreived dynamically (UDDI). Since web service standards
    are open,
    most popular programming languages already provide client APIs to interact
    with them
    thus freeing the web service developer from direct interaction with the
    client developer
    and letting the client be developed on any platform. The penalty for this
    openness
    is a small performance hit (XML translation) and a slowly maturing security
    model.
    So in summary, use EJBs for business operations that have Java clients within
    your
    enterprise, use servlets to provide web style access to your business operations
    (like web pages) and use web services to enable automated clients that can
    be written
    on any platform either inside or outside your enterprise (firewall). In
    fact, it
    is common to write the EJB first and then to expose some parts of it outside
    of your
    enterprise by writing a web service wrapper (maybe using the EJB controls
    that we
    saw in class).
    I hope this helps.
    Adam
    "Sadhana Jain" <[email protected]> wrote:
    Hi,
    I don't know if this is an appropriate question to ask for this class as
    it's not
    workshop
    specific. I was wondering how will I decide when it is appropriate to use
    a web
    service as opposed to say servlet or an EJB for my application? What is
    a good
    rationale to use?
    Thanks,
    Sadhana

  • How to do Bulk data transfer  using Web Service

    In my application I have to write various web services but majority of the web service has to
    query database and return back bulk data(rows>10K) through web service.
    So I would like to ask what is the efficient way of transferring bulk data using web service as presently
    Iam returning the dataset as xml String (using StringBuilder) from web service and consuming the same at client end.
    Is there a better way to this in web service?
    My env:
    Front end can be in any other technology ,UI like C#
    Back end : Tomcat 6 on Java 6 with Axis2
    Thanks in advance

    Innova wrote:
    But then also I have to mention a return type although its xml that is getting transferred.
    Can you provide me a with a small sample code.Like if I have Emp obect with properties
    Empname,EmpID,DOJ,DOB,Dpt . In this case what will be the return type.
    My major concern is that my resultset is going to be huge in terms of >10,000 rows so
    that much time for formation of xml and then the transfer so how can I reduce the transfer
    time ,I meant a faster optimised approach for transferring large data as part of web service.
    Simply putting , how can I transfer bulk data in minimum time so that I can reduce the
    waiting time at client side for the response.
    Thanks in advanceI've done this with thousands before now, and not had a performance problem...at least nothing worth writing home about.
    Your return type will be an array of Emp objects. You can use a SOAP array for that (you'll need to look that up for the syntax, since I can't remember it off the top of my head), which gets restricted to being an array of Emp.
    Should the normal technique prove to be too slow then you should look at alternatives, but I would expect this to work well enough. And you have no faffing about with devising a new transfer system that then has to be explained to your client system...it'll all be standard.

  • Expose a Human Task as a web service, is posible ?

    Hi everyone, is there a way to expose a human task as a web service using BPM Studio or other way ?

    Hi Carlos
    Human Task by itself do not have any significance or play any role. Its the Process or Sub Process where that Human Task is used is what is important. And you can Expose any BPM Process as a WebService. Infact by default it is already a WebService if you observer closely. We can generate a WebService client for any BPM Process.
    So I am not clear on what exactly you are asking by exposing a Human Task as Web Service which I guess is NOT possible. This Human Task .TASK file do not have anything except for its definition.
    Thanks
    Ravi Jegga

  • Siebel integration using Web Service

    Hi,
    We are in the process of integrating Siebel with external systems using web service. We also use the Virtual business component with customer business service. After web service call, it return Siebel property set in format of XML, we need parse the XML (property set) to populate data into VBC fields in order to display data in user interface.
    It seems that writing custom XML parsing script is not very desired as so many fields are involved in the integration object. We just wondering if there is any other better ways to populate data into VBC with out using escript since the integration object created by importing WSDL already listed all integration fields. Can data returned by Web service call directly populated the VBC fields through the integration object?
    Thanks
    Steve

    Effectively what you're looking at doing here is taking your external content (from the Web Service) and then converting that into the very specific Property Set format that a VBC requires.
    The EAI Data Transformation Engine is your friend here as it should let you perform the (hopefully simple) transformation between the two, although you'll also need to define the property set as an Integration Object (an External One to keep the additional envelopes created to a minimum) and then after the DTE has been called take a careful look to make sure everything is the way that it should be.
    Put all these parts into a workflow itself, and use the workflow to call the external web service and that should cut to a minimum the code you'll need in the VBC.
    Graham

  • How to get the list of values for a dynamic parameter using Web Services SDK?

    <p>I am struggling to get the list of values for a dynamic parameter of a report.</p><p>I am using Java Web Services SDK ... I tried to use PromptInfo.getLOV().getValues() method but it does not work.</p><p>First of all ... is this possible (to get the list of values for a dynamic param) using Web Services?</p><p>Second of all, if this is possible, how should I do it ... it seems it works fine when running the report from CMC. It asks for DB logon info and after that it provides a list of values.</p><p>Thx </p>

    <p>Your assumption is correct. We are trying to get the LOVs from the Crystal Report. I was not aware that this is not supported by Web Services SDK.</p><p>We used Web Services SDK to integrated the Crystal Reports in our web application. We implemented some basic actions for reports: schedule, view instances, run ad-hoc reports.</p><p>We encountered this problem when trying to run/schedule reports with dynamic parameters (a list of values from DB). We were unable to get the LOVs.</p><p>Please let me know if you can think of an alternative to look at.</p><p>Thanks a lot,</p><p>Catalin </p>

Maybe you are looking for

  • How can I share itunes content between 2 macs (both mine) in 2 different locations? Same Apple ID, same account, not the same network.

    I haev a main mac at my main home which syncs itunes to my ipad and iphone with no problem. I want to access the same itunes content at my mac in my second home which is obviously on a different network. I have my ipad and iphone with me so they can

  • Assigning a 'dynamically created sequence' value to a variable

    in my procedure i am creating a sequence on the fly, i am preparing the name with some passed parameters like below v_seq_name := 'seq_'||loadid||v_table_name; execute immediate 'CREATE SEQUENCE '||v_seq_name||' MINVALUE 1 MAXVALUE 999999999999999999

  • Getting Process ID

    Hi All, I am running a small process as shown below. P=Runtime.getRuntime().exec("cmd /c start temp_execute.bat ");The above line runs the respective .bat file in the cmd prompt.now i have 2 doubts on that which need to be crystal cleared. 1) How to

  • Turn a text database search result into a clickable .pdf link to specific images

    Hello and Good Afternoon all.  This is baffling me to no end, pretty desperate at this point.  I have a successfully implemented a search and results page from my database table 'products'.  The results page displays a field from this table as produc

  • Apple's bluetooth?

    I JUST bought my iPhone the other day. So far, I'm in love. I'm thinking of buying a bluetooth headset for it soon (even though I think people who wear them 12 hours a day look like Robots), since I have a manual transmission. What is everybody's exp