Consuming Client Web Service at Different Servers

We are consuming a third party web service using the following steps :
Third party vendor gave the link of their web service
Created a proxy class using the link.
Called their method through a program.
We are giving some input and getting the corresponding output - We are able to consume the external WS absolutely fine.
If the server location of the above web service changes do we have to follow the above steps all over again that is create new PROXY CLASS??
What if the third party application also have a landscape just like SAP  for ex - DEV, QA, PRD -  the IP of the web service is different on each system.
The user(who is not a technical person) wants something very simple where they just want to put the web service's new link and system should function as it was with old link.

No reply, hope my question is clear to the experts.

Similar Messages

  • Handling of SOAP Faults in SOAP Clients consuming PI Web services

    Hi there,
    the following is in regards to SOAP fault error handling in a SOAP client that consumes a Web Service published by PI.
    I have been reading a number of threads and blogs in regards to this topic and I am still left with some open questions which I hope to get some final answersclarifications through this thread.
    In particular the blogs
    Handling Web Service SOAP Fault Responses in SAP NetWeaver XI      - Handling Web Service SOAP Fault Responses in SAP NetWeaver XI
    XI: Propagation of meaningful error information to SOAP Client     - XI: Propagation of meaningful error information to SOAP Client
    have caused by attention.
    Both of these threads are realating to the Fault Message type one can use to return errors back to a SOAP Client (.Net, Java, etc.).
    In our scenario we published a number of Web Services through PI that provide functionality to integrate with an R3 back-end system using inbound ABAP Proxies.
    The services are standardised and will be consumed by a number of .NetJava applications and systems. The reason for the use of ABAP proxies is the customer specific application logic that is executed in the backend system. The Web services are synchronous and don't use ccBPM in the middle. Transformations are performed in PI combined with various lookups to set default values before the message is passed into the ABAP Framework of the R3 back-end system. The lookups are done against the R3 back-end system using the PI RFC Lookup feature.
    The inbound proxies currently return application errors as part of the response message back to the SOAP client. For more critical errors we introduced the use of Fault message types as the method to return the information back to the SOAP Client. This is all working satisfactory.
    The questions I have are as follows.
    1. When an error occurs at the IE level (e.g. mapping error), ABAP Proxy framework level (e.g. conversion from XML to ABAP format) or Adapter Framework level (Adapter releated error) a different SOAP fault message structure is returned to the SOAP Client than the one    used for the application errors. The SOAP fault message structure used in this case is the standard SOAP fault used by PI to return system errors back to the caller. For those SOAP fault messages there is no payload generated that could be mapped to the SOAP fault structure used for the application errors. This would be preferrable as there would be only one Fault message structure used for both inbound ABAP proxy generated fault messages and PI generated fault messages.
    Also the error messages generated by PI can be quite cryptic and difficult to interpret at the client end and could be filtered     ranslated during message mapping if the payload of the PI generated SOAP fault message could be accessed in a message mapping.
    Point 3 of the above thread 2759 indicates that this would be possible but doesn't outline how. Could somebody please clarify this for me as I don't believe that this is really possible ???.
    My idea instead was to use the PI SOAP fault message structure to also return application errors. Therefore I would create a Fault message type that matches the PI SOAP fault structure. This would enable the SOAP Client to handle only one SOAP Fault error structure. Would that be something to look into instead ?????.
    2. We have been looking at using the integrated WEB AS SOAP adapter instead of using the AF Sender SOAP adapter. While playing with this we encountered differences in the content returned through the SOAP fault generated by PI. A sample is below. Shouldn't the content of these SOAP faults be the same if the error that caused it is the same. Also the SOAP fault returned by the IE SOAP adapter is much more    useful in this particular case. Both errors below are the same, a conversion error from XML to ABAP took place in the inbound ABAP proxy framework of the back-end system.
    SOAP fault returned when using SOAP Sender adapter of AF
    <!see the documentation>
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
       <SOAP:Body>
          <SOAP:Fault>
             <faultcode>SOAP:Server</faultcode>
             <faultstring>Server Error</faultstring>
             <detail>
                <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
                   <context>XIAdapter</context>
                   <code>ADAPTER.JAVA_EXCEPTION</code>
                   <text>com.sap.aii.af.ra.ms.api.DeliveryException: XIProxy:PARSE_APPLICATION_DATA:
         at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java:455)
         at com.sap.aii.af.ra.ms.impl.core.queue.consumer.CallConsumer.onMessage(CallConsumer.java:134)
         at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:916)
         at com.sap.aii.af.ra.ms.runtime.MSWorkWrapper.run(MSWorkWrapper.java:56)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)</text>
                </s:SystemError>
             </detail>
          </SOAP:Fault>
       </SOAP:Body>
    </SOAP:Envelope>
    SOAP fault using integrated SOAP adapter of PI IE
    <SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
       <SOAP:Body>
          <SOAP:Fault>
             <faultcode>SOAP:Server</faultcode>
             <faultstring>System Error</faultstring>
             <detail>
                <s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
                   <context/>
                   <code>ABAP.PARSE_APPLICATION_DATA</code>
                   <text>Error during XML => ABAP conversion (Request Message; error ID: CX_ST_DESERIALIZATION_ERROR; (/1SAI/TXSBE20FF604BAFEF8D990A XML Bytepos.: 564  XML Path: ns1:CreatePORequest(1)POHEADER(2)COMP_CODE(1) Error Text: Data loss occurred when converting ############################## Kernel ErrorId: CONVT_DATA_LOSS))</text>
                </s:SystemError>
             </detail>
          </SOAP:Fault>
       </SOAP:Body>
    </SOAP:Envelope>
    I have been reading threads for hours without being able to find one that answers questions 1 or provides a blog that outlines the approach one should take for error handling in SOAP clients that consume PI Web Services (and covers both PISystem generated faults and faults raised in Proxies).
    There may already be a blog or thread and I just missed it.
    Any comments are welcome.
    Thanks. Dieter

    Hi Dieter,
    As Bhavesh already mentioned fault messages are used for application errors. The same is described in SAP XI help:
    http://help.sap.com/saphelp_nw04/helpdata/en/dd/b7623c6369f454e10000000a114084/frameset.htm
    In case of system error (e.g. field length too long in proxy call or error in XI/PI mapping) there seems to be no standard way of handling it and propagating the response to the consumer of webservice.
    Each system error is not recognized by SOAP adapter and SOAP adapter exception is raised.
    The only bizzare solution that I can see is developing an adapter module and transport wrong message to standard fault message before delivering it to adapter engine:
    http://help.sap.com/saphelp_nw04/helpdata/en/a4/f13341771b4c0de10000000a1550b0/frameset.htm
    Kind regards,
    Wojciech
    btw nice thread

  • How to consume a web service provided by third party system from SAP system

    Hi Friends,
    Could any of you provide me a clear picture on how to consume a web service from SAP system and is provided by a third party system?
    Do we get an URL to create a client proxy for consuming the web service?
    Thanx in advance,
    Ram

    Hi Ram,
    of course you cannot supply the WSDL URL. Inside the WSDL (just view it in your browser) you find (usually but not necessary) towards the end something like
    <soap:address location="http://www.weather.gov/forecasts/xml/SOAP_server/ndfdXMLserver.php"/>
    which is the actual adress of the service.
    An example service can be found here:
    <a href="http://www.weather.gov/xml/">National Digital Forecast Database</a>
    containing the WSDL URL at
    <a href="http://www.weather.gov/forecasts/xml/DWMLgen/wsdl/ndfdXML.wsdl">this address</a>.
    You might also want to browse for the amazon webservices which allow you to embed queries against amazon into your application.
    have fun,
    anton

  • Issue in consuming a web service

    Hi All,
    We are consuming a  Web service ( Microsoft Share point ) through our Web dynpro Application.
    Every time we consume the web service , there is a popup for authentication to connect to the Share point server. The problem  is that  the popup actually appears in the SAP GUI client and not  as a web based popup hence it does not appear in the Web dynpro Application.
    On analysis in SOA MANAGER , it was found that the Logical Port that we make use of to connect to the Web service has a configuration of entering the User Name and a password.
    The Question is, Is it Mandatory to supply login credentials to the server from which the web service is consumed ? or is there any other configuration/setting  where we can consume the web service without login credentials ?.
    Any pointers/OSS notes are very much Appreciated.
    Thanks !

    hi,
    check  out these links :
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/244e7923-0a01-0010-5887-fe0b0c6dbb8d
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/docs/library/uuid/30f1b585-0a01-0010-3d96-ad0ea291c4f9
    I hope u shud b clear wid ur query

  • Consuming a Web Service with WEB AS 6.40

    Hello,
    i try to consume a Webservice from the internet. I have configured the logical port and i created the client proxy as shown in the following real good weblog from
    Thomas Jung.
    /people/thomas.jung3/blog/2004/11/17/bsp-a-developers-journal-part-xiv--consuming-webservices-with-abap
    But when i try to test the proxy in SE80 I retrieve the following error:
    <CODECONTEXT>http://www.sap.com/xml_errorcodes</CODECONTEXT>
      <CODE>SOAP:111</CODE>
      <ERRORTEXT>Unallowed RFC-XML Tag (SOAP_EINVALDOC)</ERRORTEXT>
    What's wrong here? Someone can help me?
    Thanks for your help!
    Klaus

    We had the same error message for one of our Proxy Web Service calls.
    We tried to use an RFC instead of the URL, and performed a TEST CONNECTION.  And low and behold, we received an error message that was much more helpful than the "Unallowed RFC-XML Tag (SOAP_EINVALDOC)" message.
    The problem for us was that the Server that we were trying to consume the Web service from was blocking the IP address of our Web Application Server.
    We contacted the administrator, he verified that was the case, removed the restriction, and all is good now.
    Here was the message we saw when we tested it in the RFC:
    The Web server you are attempting to reach has a list of IP addresses that are not allowed to access the Web site, and the IP address of your browsing computer is on this list.  Please try the following: Contact the Web site administrator if you believe you should be able to view this directory or page.
    Hope this helps!

  • ABAP code and konfiguration for consuming secure web services

    I need some help/links on how to create an abap program (on 4.6 or WAS 620, or 640 if not possible in older releases) to consume a web service with authentication using certificates based on WS security  (<a href="http://www.oasis-open.org/committees/wss">http://www.oasis-open.org/committees/wss</a>) or client certificates. The request must include attachment in DIME or base64 format (preferably DIME).
    On 4.6 I have used the FM HTTP_POST with the if_ixml interface to consume web services, but I don't know if it can handle https authentication and attachements.
    Message was edited by: Robert

    check out this weblog.
    <a href="/people/thomas.jung3/blog/2005/05/13/calling-webservices-from-abap-via-https">Calling WebServices from ABAP via HTTPS</a>
    Regards
    Raja

  • Problem in writing a client web service from WSDL document

    Hi,
    I wrote a web service using .Net and a WSDL document. I tried after that to generate a client web service using Jdeveloper. but, the methode generated by Jdeveloper (in the stub) does not represente the original methode.
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <!--Generated by the Oracle9i JDeveloper Web Services WSDL Generator-->
    <!--Date Created: Fri Aug 09 13:59:52 EDT 2002-->
    <definitions
    name="CreditCard"
    targetNamespace="http://tempuri.org/jdeveloper/generated/CreditCard/CreditCard"
    xmlns="http://schemas.xmlsoap.org/wsdl/"
    xmlns:xsd="http://www.w3.org/2001/XMLSchema"
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:tns="http://tempuri.org/jdeveloper/generated/CreditCard/CreditCard"
    xmlns:ns1="http://tempuri.org/jdeveloper/generated/CreditCard/CreditCard/schema">
    <types>
    <schema
    targetNamespace="http://tempuri.org/jdeveloper/generated/CreditCard/CreditCard/schema"
    xmlns="http://www.w3.org/2001/XMLSchema"
    xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/"/>
    </types>
    <message name="Validate0Request">
    <part name="cardNumber" type="xsd:string"/>
    <part name="lngDate" type="xsd:long"/>
    </message>
    <message name="Validate0Response">
    <part name="return" type="xsd:boolean"/>
    </message>
    <portType name="CreditCardPortType">
    <operation name="Validate">
    <input name="Validate0Request" message="tns:Validate0Request"/>
    <output name="Validate0Response" message="tns:Validate0Response"/>
    </operation>
    </portType>
    <binding name="CreditCardBinding" type="tns:CreditCardPortType">
    <soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
    <operation name="Validate">
    <soap:operation soapAction="" style="rpc"/>
    <input name="Validate0Request">
    <soap:body use="encoded" namespace="CreditCard.CreditCard" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
    </input>
    <output name="Validate0Response">
    <soap:body use="encoded" namespace="CreditCard.CreditCard" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
    </output>
    </operation>
    </binding>
    <service name="CreditCard">
    <port name="CreditCardPort" binding="tns:CreditCardBinding">
    <soap:address location="http://localhost:8888/FirstSample-CreditCard-context-root/CreditCard.CreditCard"/>
    </port>
    </service>
    </definitions>
    Here The methode Validate consume two parameters : string and long
    the generated stub look like :
    public Vector Validate(Element requestElem) throws Exception
    There is some one who have a solution ?
    ---------------------------------------

    My guess is that it is because .NET defaults to generating a document style interface whereas JDeveloper defaults to generating an RPC style interface. The end result is that JDeveloper wraps the document interface in something that looks document like - thus your client. To see how to handle this right now, check out this sample - you have to parse the XML:
    http://otn.oracle.com/tech/webservices/htdocs/series/net/content.html
    In the preview of JDeveloper 9.0.3 which is due quite soon - next few weeks roughly (crossing my fingers) - JDeveloper will wrap .NET document based Web services in a much more elegant wrapper - giving you exactly what you are looking for - a method called Validate rather than a vector of Elements.
    What I don't understand in your sample, however, is that you have WSDL generated from JDeveloper versus WSDL generated from .NET. Did you also do an implementation of the validate method in Java too?
    Mike.

  • Help with consuming a web service

    Hi guys,
    I'm trying to consume a web service but I have the following problem when I consume it:
    javax.xml.rpc.soap.SOAPFaultException: Internal Error
    at com.sun.xml.rpc.client.StreamingSender._raiseFault(StreamingSender.ja
    va:491)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:307
    at qtel.tibco.transferAsset.AssetPort_Stub.transferAsset(AssetPort_Stub.
    java:67)
    at transferasset.Main.main(Main.java:34)
    I'm using NetBeans 5.0 with JDK 1.4 and the JAX-RPC 1.6
    here is my Code:
    package transferasset;
    import java.io.*;
    import javax.xml.rpc.*;
    import java.rmi.*;
    * @author Administrator
    public class Main {
        /** Creates a new instance of Main */
        public Main() {
         * @param args the command line arguments
        public static void main(String[] args) {
           try{
             System.out.println(args[0] + " " + args[1] + " " + args[2] );
             qtel.tibco.transferAsset.AssetManagementServiceServiceagent service = new qtel.tibco.transferAsset.AssetManagementServiceServiceagent_Impl();
             qtel.tibco.transferAsset.AssetPort port = service.getAssetPortEndpoint1();
             qtel.tibco.transferAsset.TransferAssetRequest req = new  qtel.tibco.transferAsset.TransferAssetRequest(args[0].toString(),args[1].toString(),args[2].toString());
             qtel.tibco.transferAsset.TransferAssetResponse result = port.transferAsset(req);
             System.out.print(result.getData().getReturnStatus());
           }catch(javax.xml.rpc.soap.SOAPFaultException e){
               //System.out.print(e.getFaultString());
               //System.out.print(e.getFaultActor());
               e.printStackTrace();
        }catch(Exception e){
                e.printStackTrace();
               System.out.println(e.getMessage());
               //System.out.println("exception");
           //return result.getData().getReturnStatus();
    }the problem is as folowwing in the command prompt when I run the following command I will have no error and the web service work fine:
    java -jar "C:\updateassetinfo\dist\updateassetinfo.jar" 1 1 1
    but the problem will appear if I send a character in the parametars like this:
    java -jar "C:\updateassetinfo\dist\updateassetinfo.jar" 12367 3456 HC-098
    So any help will be Appreciated
    thanks in advance.

    Hi guys,
    I'm trying to consume a web service but I have the following problem when I consume it:
    javax.xml.rpc.soap.SOAPFaultException: Internal Error
    at com.sun.xml.rpc.client.StreamingSender._raiseFault(StreamingSender.ja
    va:491)
    at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:307
    at qtel.tibco.transferAsset.AssetPort_Stub.transferAsset(AssetPort_Stub.
    java:67)
    at transferasset.Main.main(Main.java:34)
    I'm using NetBeans 5.0 with JDK 1.4 and the JAX-RPC 1.6
    here is my Code:
    package transferasset;
    import java.io.*;
    import javax.xml.rpc.*;
    import java.rmi.*;
    * @author Administrator
    public class Main {
        /** Creates a new instance of Main */
        public Main() {
         * @param args the command line arguments
        public static void main(String[] args) {
           try{
             System.out.println(args[0] + " " + args[1] + " " + args[2] );
             qtel.tibco.transferAsset.AssetManagementServiceServiceagent service = new qtel.tibco.transferAsset.AssetManagementServiceServiceagent_Impl();
             qtel.tibco.transferAsset.AssetPort port = service.getAssetPortEndpoint1();
             qtel.tibco.transferAsset.TransferAssetRequest req = new  qtel.tibco.transferAsset.TransferAssetRequest(args[0].toString(),args[1].toString(),args[2].toString());
             qtel.tibco.transferAsset.TransferAssetResponse result = port.transferAsset(req);
             System.out.print(result.getData().getReturnStatus());
           }catch(javax.xml.rpc.soap.SOAPFaultException e){
               //System.out.print(e.getFaultString());
               //System.out.print(e.getFaultActor());
               e.printStackTrace();
        }catch(Exception e){
                e.printStackTrace();
               System.out.println(e.getMessage());
               //System.out.println("exception");
           //return result.getData().getReturnStatus();
    }the problem is as folowwing in the command prompt when I run the following command I will have no error and the web service work fine:
    java -jar "C:\updateassetinfo\dist\updateassetinfo.jar" 1 1 1
    but the problem will appear if I send a character in the parametars like this:
    java -jar "C:\updateassetinfo\dist\updateassetinfo.jar" 12367 3456 HC-098
    So any help will be Appreciated
    thanks in advance.

  • Consume a Web Service: No receiver could be determined

    Hello,
    I have a successful running Web Service on a JAVA stack. Now I want to consume this web service within the ABAP Stack. For this purpose I generated the appropriate proxy object from the WSDL.
    However, while running my ABAP test program I am receiving an error: RCVR_DETERMINATION.NO_RECEIVER_CASE_BE No receiver could be determined
    Does anybody know, what to do? Do I need to register the generated proxy somewhere? Or what went wrong?
    Best Regards!

    you dont need to do any settings in LPCONFIG
    just create client proxy and <b>activate</b> the proxy class
    then in LPCONFIG
    enter the client proxy name and port name (port name can be any text) and check the checkbox "default" and click create and activate the same.
    now you are ready to consume the webservice.
    Regards
    Raja
    assigning points to helpful answers by choosing the appropriate radiobuttons in the answers in the SDN way of saying thanks.

  • Consuming a web service from a BSP page

    Hello
    Here is the description of the different instances :
    ERP is running on an instance without J2EE engine
    EP  is running on an instance with J2EE engine
    I create a web service definition, VI, and proxy classe on ERP.
    I tested the web service using WSADMIN where I put as J2EE server the J2EE engine on the EP instance : it works.
    I created a BSP application to consume the web service, when I try to reach the web service I've the error Unallowed RFC-XML Tag (SOAP_EINVALDOC) .
    I guess it doesn't work because I ve got no J2EE engine linked to my ERP system, but as the netweaver plateform is new for us my question is : How can I define in ERP that I use the J2EE engine from EP ?
    Thanks

    hi
    in your wsdl file find this
    tag
    <wsdl:service name="SendSMS">
    inside it
    you have a tag for soap port like this
    <wsdl:port name="SendSMSSoap" binding="tns:SendSMSSoap">
          <soap:address location="http://localhost/<Web service path>" />
    </wsdl:port>
    <wsdl:port name="SendSMSHttpGet" binding="tns:SendSMSHttpGet">
          <http:address location="http://localhost/<Web service path>" />
    </wsdl:port>
    <wsdl:port name="SendSMSHttpPost" binding="tns:SendSMSHttpPost">
          <http:address location="http://localhost/<Web service path>" />
    </wsdl:port>
    here replace localhost with the address of the server where the web service lies
    like i mentioned
    <server ip>
    i hope this will work out
    regards

  • Consuming a web service in Oracle9i with JAX-RPC calling

    Hello,
    i need to generate web service client in oracle9i db using jpublisher. And i found in this tutorial http://www.oracle.com/technology/sample_code/tech/java/jsp/callout_users_guide.htm that Oracle 9i is not supporting JAX-RPC web services calling, because of JDK 1.3.
    Is there any possibility to consume a web service using JAX-RPC instead of Oracle SOAP in Oracle 9.2 database ?

    I use utl_http pl/sql supplied package for this need - http://akdora.wordpress.com/2007/08/03/calling-a-web-service-by-plsql-utl_http/
    But I believe you may find more information with these resource -
    http://www.oracle.com/technology/sample_code/tech/java/web_services/index.html
    http://forums.oracle.com/forums/forum.jspa?forumID=97
    http://forums.oracle.com/forums/forum.jspa?forumID=99
    http://www.oracle.com/technology/sample_code/tech/java/jsp/dbwebservices.html
    Best regards.

  • ERROR Consuming external Web Services from JDE E1

    Hello everybody,
    I am trying to consume external web services from JD Edwards Enterprise One. For that, I have followed "Consuming External Web Services Tutorial".
    I have followed all the steps successfully, but when the final test called from an interactive application to the business function that I had created in C get the following error messages in the log file:
    [WARN ] JDE - [RUNTIME] *ERROR CallObject@13d346d: CallObject.executeRequest(): Problem executing function [consumingWS] lib [CALLBSFN] GetProcAddress failed. Please see Enterprise Server log for details. Business function cannot be found user:JDE Env:DV900*
    [SEVERE] JDE - [RUNTIME] FormEngine.doEvent(): BSFN failed and need roll back!! | Form Name : P5500055_W5500055A com.jdedwards.runtime.base.SystemException: There was a problem with the sever while running the business function consumingWs.\nThe current transaction has been lost.\nPlease exit the application and restart it.\nButton clicked Line number 1\nP5500055_W5500055A
    com.jdedwards.runtime.base.SystemException: There was a problem with the sever while running the business function consumingWs.\nThe current transaction has been lost.\nPlease exit the application and restart it.\nButton clicked Line number 1\nP5500055_W5500055A
    at com.jdedwards.runtime.engine.form.FormEngine.doEvent(Unknown Source)
    at com.jdedwards.runtime.vtcomponent.form.VTForm.doEvent(Unknown Source)
    at com.jdedwards.runtime.engine.ButtonEngine.onClick(Unknown Source)
    at com.jdedwards.runtime.vtcomponent.VTButton.onClick(Unknown Source)
    at com.jdedwards.runtime.vtcomponent.VTButton.processVirtualEvent(Unknown Source)
    at com.jdedwards.runtime.virtual.OWVirtual.processVTEvent(Unknown Source)
    at com.jdedwards.runtime.virtual.OWVirtual.processEventLoop(Unknown Source)
    at com.jdedwards.runtime.virtual.OWVirtual.run(Unknown Source)
    at com.jdedwards.base.util.ThreadPool$WorkerThread.run(Unknown Source)
    I have tested:
    1) Incorrect OCM for BSFNs.
    Mapped to development Enterprise Server, so it was failing to find the BSFN.
    2) Increase heap space for Java.
    3) Business Function Location (C/S): "Both Client & Server Function"
    4) Link the Business function with its parent DLL (CALLBSFN.dll)
    I'm not sure I'd done well...
    5) Update Package
    From Buildlog.txt I can see the following error:
    Copying \\ORACLE-JDE\E900\DV900\package\DV900FB\lib32\sCALLBSF.lib to \\ORACLE-JDE\E900\DV900\package\DVU100427\lib32\sCALLBSF.lib
    Copying \\ORACLE-JDE\E900\DV900\package\DV900FB\work\jdertdll.c to \\ORACLE-JDE\E900\DV900\package\DVU100427\work\jdertdll.c
    Generating Makefile: E:\e900\DV900\obj\CALLBSFN.mak
    B5500055 : Not checked into pathcode, excluded from the build
    .Makefile generated.
    Building business functions.
    ************CALLBSFN************
    jdertdll.c
    Creating library \\ORACLE-JDE\E900\DV900\package\DVU100427\lib32\CALLBSFN.lib and object \\ORACLE-JDE\E900\DV900\package\DVU100427\lib32\CALLBSFN.exp
    CALLBSFN.exp : error LNK2001: unresolved external symbol _consumingWS@12
    \\ORACLE-JDE\E900\DV900\package\DVU100427\bin32\CALLBSFN.dll : warning LNK4088: image being generated due to /FORCE option; image may not run
    To not build the business function is not possible the package deployment for the server becomes aware of the presence of this business function...
    But I have not managed to solve the problem, do you have any idea?
    Thank you and regards.

    Hello again,
    I have modied OCM record with a correct BSSV (the name and the port number were wrong).
    And other thing that I have tested is change the parent DLL with a new DLL created by me (Object Name: CALLWS.dll, Product Code: 0, Product System Code:0) and the error is:
    *ERROR CallObject@25b780: CallObject.executeRequest(): Problem executing function [invocarWS] lib [CALLWS] LoadLib failed.Please see Enterprise Server log for details. Library in which business funtion resides cannot be loaded user:JDE Env:DV900*
    [SEVERE] JDE - [RUNTIME] FormEngine.doEvent(): BSFN failed and need roll back!! | Form Name : P5500055_W5500055A com.jdedwards.runtime.base.SystemException: There was a problem with the sever while running the business function invocarWS.\nThe current transaction has been lost.\nPlease exit the application and restart it.\nButton clicked Line number 1\nP5500055_W5500055A
    com.jdedwards.runtime.base.SystemException: There was a problem with the sever while running the business function invocarWS.\nThe current transaction has been lost.\nPlease exit the application and restart it.\nButton clicked Line number 1\nP5500055_W5500055A
         at com.jdedwards.runtime.engine.form.FormEngine.doEvent(Unknown Source)
         at com.jdedwards.runtime.vtcomponent.form.VTForm.doEvent(Unknown Source)
         at com.jdedwards.runtime.engine.ButtonEngine.onClick(Unknown Source)
         at com.jdedwards.runtime.vtcomponent.VTButton.onClick(Unknown Source)
         at com.jdedwards.runtime.vtcomponent.VTButton.processVirtualEvent(Unknown Source)
         at com.jdedwards.runtime.virtual.OWVirtual.processVTEvent(Unknown Source)
         at com.jdedwards.runtime.virtual.OWVirtual.processEventLoop(Unknown Source)
         at com.jdedwards.runtime.virtual.OWVirtual.run(Unknown Source)
         at com.jdedwards.base.util.ThreadPool$WorkerThread.run(Unknown Source)
    It seems like it is not possible to find the CALLWS dll... Althought it was built and compiled without errors and warnings...
    I would like to debug the Business Function in C from Microsoft Visual Studio 2005, but I can't, because breakpoints are disable.
    I have followed the following manual:
    E1: BSFN: Debugging Business Functions Using Visual Studio .NET 2003, 2005 and 2008 (I have founded it in Oracle Support (Metalinki)).
    And here they say:
    "It is a normal feature of visual studio 2003/2005 to disable break point at the start of a debug session and display a warning saying no symbol is loaded. Break point will only be activated on demand when the code to debug is loaded in to the runtime memory".
    I think is necessary add the referency with parent DLL (in my case, CALLWS.dll) but I don't know how can I do it. I have tested to insert in Business Function's source code the following line:
    "#pragma comment(lib,"CALLWS.dll")" to force to include it, but when it was built:
    ************CALLWS************
    B5500055.c
    Replacing B5500055.obj
    jdertdll.c
    Creating library E:\e900\DV900\lib32\CALLWS.lib and object E:\e900\DV900\lib32\CALLWS.exp
    LINK : fatal error LNK1104: cannot open file 'CALLWS.dll'
    Microsoft (R) Manifest Tool version 5.2.3790.2075
    Copyright (c) Microsoft Corporation 2005.
    All rights reserved.
    mt.exe : general error c10100b1: Failed to load file "E:\e900\DV900\bin32\CALLWS.dll". The system cannot find the file specified.
    Adjusting DLL load addresses . . .
    ************Build Finished************
    I don't understand nothing, because the path is totally right.
    Any help is appreciated!
    Thank you and regards.
    Edited by: user12085357 on 29-abr-2010 2:55
    Edited by: user12085357 on 29-abr-2010 3:02

  • How to consume/access web services in forefront identity manager 2010 r2

    Hi,
    I have one web service  in c# for authentication  so i want to integrate this web service in my FIM 2010 R2.I want to ask one more question how to consume/access web service of FIM 2010 R2,so please tell me how is it possible in FIM 2010 R2 and
    anybody have any example for consuming/accessing web service step by step in FIM 2010 R2.
    Regards
    Anil Kumar

    Here is some C# code that accesses FIM resource attributes from the web services via the FIM 2010 Resource Management Client which I mentioned in an earlier post:
    using System;
    using System.Collections.Generic;
    using Microsoft.ResourceManagement.Client;
    using Microsoft.ResourceManagement.ObjectModel;
    namespace MyTest
    public partial class ResourceAttribute
    public ResourceAttribute()
    public string GetTypeAndDisplayName(string objectID)
    String ReturnValue = String.Empty;
    using (Microsoft.ResourceManagement.Client.DefaultClient client = new DefaultClient())
    client.ClientCredential = CredentialCache.DefaultNetworkCredentials;
    client.RefreshSchema();
    string query = String.Format("/*[ObjectId={0}]", objectID);
    foreach (RmResource res in client.Enumerate(query))
    String displayName = res.DisplayName;
    String objectType = res.ObjectType;
    ReturnValue = displayName + " (" + objectType + ")";
    break;
    return ReturnValue;
    You would just need to define your bindings and endpoints in your web.config. This method will return the DisplayName and ObjectType for the resource with the ObjectId matching the objectID argument. If you need more information, please provide more specifics
    for what you are trying to accomplish.
    There are many code examples for this library on its CodePlex home:
    http://fim2010client.codeplex.com/

  • Consuming a Web Service in JSP

    Hi All,
    I have exposed a BAPI as a web service using the material available on SDN, I had searched a lot but I am not able to find a satisfactory material which guides about how to consume this web service in a JSP page, can somebody help me in this regard.
    Regards
    Sid

    Hai,
    Create a new project of type web services under that select deployable proxy.
    right click on the project new client proxy definition for the web service .
    use that generated proxy classes in your jsp.
    http://help.sap.com/saphelp_nw2004s/helpdata/en/d6/f9bc3d52f39d33e10000000a11405a/frameset.htm
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/c2188ae5-0601-0010-dd93-c23e381ef41e
    otherwise
    /people/abhijeet.jangam/blog/2006/05/27/developing-single-document-wsdl-to-schedule-a-web-service
    regards,
    null
    Message was edited by:
            Naga Raju Meesala

  • Consume a Web Service in ABAP

    Hi,
    We have a Web Service URL on PI. Run time of this Web Service in a Portal Server.
    We need to access the Same URL from ECC using ABAP Programming?
    Can any one tell me how we can call the same Web Service?
    I need to pass few values to the web service using ABAP Code and I need to get back the result into some variables.
    any code available for verify?
    Thanks,
    Sekhar.J

    Hi,
    Steps involved in Consuming a Web Service in ABAP.
    1. You will need to create a Service Consumer Proxy in the ECC system.
    The procedure for this is available in the documentation link [http://help.sap.com/saphelp_erp60_sp/helpdata/en/46/9743916d1115ece10000000a114a6b/frameset.htm] in the section Consuming a Web Service.. The URL access path of the WSDL can be used to generate the Service Consumer Proxy in ABAP.
    2. Using transaction SOAMANAGER create the Logical Port for the Consumer Proxy created in Step 1.
    3. Code the Consumer Proxy call in the ABAP program. Check section Consuming a Web Service --> Programming with Client and Server Proxies --> Sending a Message in the link specified above.
    The Video link [Consuming Services in ABAP |https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/media/uuid/20eb3174-41ab-2a10-a383-907faf60eed3] will provide good conceptual knowledge, steps involved and Logical port maintenance..
    In case you face any problems, shoot your queries.
    regards
    Nitesh

Maybe you are looking for