How to call a webservice proxy from BPM application?

Hi All,
Consider a case where I want to use external webservice in my BPM application. What is the best approach to achieve this.
1) What if I create a web service proxy and wants to use in the BPM app. How can I use this?
2) Which component do I need to use "Web Service" component or "Third Party Adapter" component from the component pallette?
3) If I use directly the wsdl in the "Web Service" component will it cause any issues in the future.
I searched in the net and the docs, but it didnt find the proper solutions for this.
Please provide your comments on this.
Thanks.

First of all a java proxy would not help much here - there is no use for that in SOA suite especially when it comes to using the JCA adapters. Instead reference the WSDL directly in SOA suite but there is a caveat - see my response below
1) What if I create a web service proxy and wants to use in the BPM app. How can I use this?
Dont create a WS proxy. Instead reference the WSDL and call it using a Service Task from the BPM process
2) Which component do I need to use "Web Service" component or "Third Party Adapter" component from the component pallette?
Use the WSDL directly and select "Web Service" from the component palette
3) If I use directly the wsdl in the "Web Service" component will it cause any issues in the future.
Yes there are lots of issues referencing a WSDL directly. Instead upload the WSDL reference to SOA-MDS and then use the oramds:// reference to the WSDL. This will ensure the composite does not break when the WSDL is not available. JDeveloper also goes into a tizzy when the WSDL is not up.
thanks,
Vikram

Similar Messages

  • How to call a web Service from Oracle Applications?

    Hi friends,
    I've posted this question on OA Framework forum , but may be it's more appropiated put it here. Sorry for do it again:
    It's about how to call a web service from a Form or a .sql (via Request) in Oracle Applications:
    Could you please explain here the detailed steps (with code example if it's possible) to invoke a webservice from Oracle Applications?.. how did yo do it...?
    I've read differents posts here and the 33097.1 metalink note (by the way, the first recommended link in this note is broken...), but there are lots of theorical concepts and no real examples to see how/from where invoke the WS
    I'll have to call one webservice (I suppose the customer will give me the interface implementation)...but I've never did it with Applications so that's why I ask you for all the detailed steps...
    I work with Forms 6i, Apps 11.5.10.2 and DB 9.2.0.7.
    Thanks a lot.
    Jose.

    Hello Jose,
    I did using java program to call BPEL web services in 11.5.10.
    I pasted below the metalink note for your reference (Note:250964.1)
    The idea is first write a java program to call the webservice (in my case it is calling an BPEL web service, so this may not help directly), test it.
    Then port the java program as specified in the note, so that you could call your web service through concurrent manager scheduler.
    Is this ok?
    Thanks
    Arun.
    ======================================================
    Checked for relevance on 25-Apr-2007
    Application Install - Version: 11.5.8 to 11.5.10
    Goal
    ====
    How to register and create a Java concurrent program for Oracle Applications
    Release 11i
    Solution
    ========
    1. Create your Java Concurrent Program (JCP) , using a text editor.
    /*===========================================================================+
    | Concurrent Processing Sample Code |
    | |
    | FILENAME |
    | Hello.java |
    | |
    | DESCRIPTION |
    | Sample Java concurrent program |
    | About the simplest possible program, just writes a message to the |
    | logfile and output file. |
    | |
    | HISTORY |
    | $Log$ |
    | |
    +===========================================================================*/
    package oracle.apps.fnd.cp.sample;
    import oracle.apps.fnd.cp.request.*;
    public class Hello implements JavaConcurrentProgram {
    public static final String RCS_ID = "$Header$";
    public void runProgram(CpContext ctx) {
    ctx.getLogFile().writeln("-- Hello World! --", 0);
    ctx.getOutFile().writeln("-- Hello World! --");
    ctx.getReqCompletion().setCompletion(ReqCompletion.NORMAL, "");
    =======================================
    End Sample
    =======================================
    2. Create a sample directory under $JAVA_TOP:
    $ mkdir $JAVA_TOPoracle/apps/fnd/cp/sample
    3. Copy Hello.java into $JAVA_TOP/oracle/apps/fnd/cp/sample:
    $ cp $HOME/Hello.java $JAVA_TOP/oracle/apps/fnd/cp/sample
    4. Compile your java program:
    javac $JAVA_TOP/oracle/apps/fnd/cp/sample/Hello.java
    5. Test at the command line with following syntax:
    jre -Ddbcfile=$FND_TOP/secure/your_dbc_file.dbc \
    -Drequest.outfile=./outfile \
    oracle.apps.fnd.cp.request.Run \
    oracle.apps.fnd.cp.sample.Hello
    6. Register your custom java concurrent program with Oracle Applications.
    a. Navigate: Concurrent > Program > Executable
    b. Enter details into the form
    Executable: JCPHELLO
    Shortname: JCPHELLO
    Application: Application Object Library
    Execution Method: Java Concurrent Program
    Execution File Name: Hello (Insert a name that does not contain space or period)
    Execution File Path: oracle.apps.fnd.cp.sample
    c. Save the details
    d. Navigate: Concurrent > Program > Define
    e. Enter details into the form
    Program Name: JCPHELLO
    Program Shortname: JCPHELLO
    Application: Application Object Library
    Executable: Choose JCPHELLO from LOV
    Executable Options :
    f. Save the details
    7. Add this new concurrent request to your responsibility request group.
    a. Navigate > Security > Responsiblity > Request
    b. Query System Administrator
    c. Add new row and choose TestJava
    d. Save the changes.
    8. Run your new Hello Java Concurrent Program
    Navigate: Request > Run
    References
    ~~~~~~~~~~~
    Oracle Applications Developers Manual for Release 11i A75545-01
    ====================================================

  • How to call/show  page(s) from different application

    Hi All,
    I'm working on couple of applications and some reports (about 30) are used in all applications. I need your advice on doing this efficiently.
    Is it possible to
    1) Create a separate application with all the reports.
    2) Create a blank page with lists linking to all those reports on the same tab
    Now, is it possible to call that page in a "reports" tab of each application without prompting for login and still have rest of the tabs visible while the user is using the reports?
    Thanks in advance,
    Asha
    Edited by: ashapatil on Jul 29, 2010 1:54 PM
    Edited by: ashapatil on Jul 29, 2010 5:41 PM

    Asha,
    you can create links to call pages from other applications without any problem, just take a look at the structure of APEX URL over here: http://www.oracle-and-apex.com/apex-url-format/
    To avoid re-logins you could either disable security on your application (not recommended) or create a custom authentication scheme which takes logged in users from other applications as granted.
    brgds,
    Peter
    Blog: http://www.oracle-and-apex.com
    ApexLib: http://apexlib.oracleapex.info
    Work: http://www.click-click.at
    Training: http://www.click-click.at/apex-4-0-workshops

  • How to call a Webdynpro view from BSP page (MVC) in a new window?

    Dear Experts,
    kindly advise how to call a webdynpro view from BSP application after performing an event (through button or hyper link).
    Regards,
    Sarat.

    Hi,
    This has been discussed many times in several forums.
    Please check the method CL_WD_UTILITIES=>CONSTRUCT_WD_URL, to create a runtime url for your WD Application and call this URL.
    Refer thread: Call Webdynpro Application from BSP Application
    Hope this will be useful!
    Regards,
    Meganadhan S

  • Call a  Webservice method from DotNetApplication

    Hi all,
    I have created One web service using Axis. My WebServices are below:
    import java.util.*;
    public class NHLService {
      HashMap standings = new HashMap();
      public NHLService() {
        // NHL - part of the standings as per 04/07/2002
        standings.put("atlantic/philadelphia", "1");
        standings.put("atlantic/ny islanders", "2");
        standings.put("atlantic/new jersey", "3");
        standings.put("central/detroit", "1");
        standings.put("central/chicago", "2");
        standings.put("central/st.louis", "3");
      public String getCurrentPosition(String division, String team) {
        String p = (String)standings.get(division + '/' + team);
        return (p == null) ? "Team not found" : p;
    }Its name is NHLService.jws. Then I run this service in my localhost like this "http://localhost:8080/axis/NHLService.jws" It is running and show that
    There is a Web Service here
    Click to see the WSDL Now I can view the wsdl. Now I want to call this webservice method from DotNet Application.Please any one knows that can you guide me the steps.
    Thanks in Advance,
    Raj

    but i don't understand a thing...
    when i create a static stub client i link with the config-wsdl file the path of my webservices wdsl and the client compile and run well...
    why with the servlet i had to link .class file or jar file??
    thanks a loto

  • ** Is it possible to call a Proxy from BPM ?

    Hi friends,
    Our requirment is to take the thru JDBC (data required to create Sales Order) and call the Standarad BAPI 'BAPI_SALESORDER_CREATEFROMDAT2'. Since BAPI is not able to handle multiple sales order, we want to use this BAPI in inbound proxy and want to call from BPM.
    Since we want to call continuous BAPIs one by one, (Sales Order, Delivery, Invoice) we want to design this scenario using BPM.
    I understand that we are not able to create proxy for Abstract Interfaces. BPM only understands abstract interface. In this case, how do we call proxy from BPM? Is there any other possibility?
    Kindly reply friends.
    Kind Regards,
    Jegatheeswaran P.

    hey,
    yeah its possible..
    Check this.
    /people/vanita.thareja2/blog/2006/05/23/bpm-sending-message-asynchronously-and-getting-the-response-from-synchronous-system-using-abap-proxies
    These replies too..
    Proxy in BPM
    BPM file to ABAP proxy
    Thanks,
    Vijaya.
    Edited by: Vijaya Lakshmi Palla on Jun 4, 2008 5:32 AM

  • How to call SAP Webservice in standalone java program

    Hi,
    In our Java application, we want to use the SAP Webservices. I dont know much about authentication mechanism used by SAP. Can any one please help me with any sample code how to Call SAP webservice in Standalone Jave Program. I searched alot on the web regarding this, but helpless. Please help me.
    Thanks,
    Mohan

    Hi Mohan,
    You need an account for the ES Workplace. I'm afraid this is not free, e.g. check [SAP NetWeaver, Composition Subscription|https://www.sdn.sap.com/irj/sdn/subscriptions/composition].
    But I thought you wanted to play with a WSDL [you already had at hand|Sample code to access BAPI Web services from JAVA required;?

  • How to call a SAP service from adobe flex

    Hi experts,
    I need to call a webservice create from SAP BAPI  my URL is: http://xxxxxxxxx:8000/sap/bc/srt/wsdl/bndg_DD90E166ACE1B1F18AD8001B789FF0AD/wsdl11/allinone/ws_policy/document?sap-client=200, with this URL I can test the webservice from WsNavigator.
    The operation is ZimrfcVerifOtUbica and the input structure is:
    ZimrfcVerifOtUbica
    > PiNumeroAlmacen (input parameter)
    > PiOTransporte (input parameter)
    The output structure is:
    ZimrfcVerifOtUbicaResponse
    >PoMessage (output parameter)
    I've created a view with two inputfield (one to PiNumeroAlmacen, one to PiOTransporte), one button and one label (to put the result value).
    but I don't know how to call the WS, I tried with this code:
    <mx:WebService id="ZCCONVERTERService"
         wsdl="http://xxxxxxxxx:8000/sap/bc/srt/wsdl/bndg_DD90E166ACE1B1F18AD8001B789FF0AD/wsdl11/allinone/ws_policy/document?sap-client=200;" useProxy="false" >
              <mx:operation name="ZimrfcVerifOtUbica" resultFormat="e4x">
                   <mx:request >
                        <PiNumeroAlmacen>AGR</PiNumeroAlmacen>
                        <PiOTransporte>01000</PiOTransporte>
                   </mx:request>
              </mx:operation >
         </mx:WebService>
    and I get this error: [RPC Fault faultString="Could not load WSDL" faultCode="Server.NoServicesInWSDL" faultDetail="No <wsdl:service> elements found in WSDL at ."].
    I tried with actionscript and runtime library but I get this error: java.lang.Exception: Unsupported element in WSDL file: UnknownExtensibilityElement
    I tried put in Data--> Import Web Service and I put the URL and I get Unable to load the WSDL.  Specify another URI.
    Other thing is for this webservice I've created a logic destination, and this webservice is used in a webdynpro aplication and works correctly. But now I need to use the same webservice in flex.
    Could you help me to call to this webservice?
    Thanks in advance.
    Jose

    I have could do it, but now I'm trying to do the same with a SAP standard service.
    Any idea?
    Regards,
    Jose

  • How to call a web service from forms 9i

    Hello all, I was trying to run the example on this website that shows how to call a webservice from forms, and I recieved an error. I am at the last step, where it tells me to create a button and add a when button pressed trigger. Here is the code I am using from the example:
    DECLARE
    jo ora_java.jobject;
    rv ora_java.jobject;
    ex ora_java.jobject;
    BEGIN
    jo := CurrencyExchangeServiceStub.new;
    --This will get the exchange rate from US Dollars to UK Sterling.
    rv := CurrencyExchangeServiceStub.getRate(jo,'USA','UK');
    message (float_.floatValue(rv));
    EXCEPTION
    WHEN ORA_JAVA.JAVA_ERROR then
    message('Unable to call out to Java, ' ||ORA_JAVA.LAST_ERROR);
    WHEN ORA_JAVA.EXCEPTION_THROWN then
    ex := ORA_JAVA.LAST_EXCEPTION;
    message(Exception_.toString(ex));
    END;
    It gives me an error on"Exception_.tostring" component must be declared. Does anyone have any suggestions? I am trying to figure out how to call an external WS from a form. Thanks.

    IN forms Builder under Import java classes
    Change the Import Classes field to java.lang.Exception and press Import. This will create a PL/SQL package for the Exception Java class. While this is not essential, it does make error reporting easier. Now press Close to dismiss the dialog.

  • How to call a webservice (e.g. MII)?

    I am looking for information how to call a webservice (e.g. a transaction in SAP MII) in SAP ME. For example, I have to call a webservice when the user clicks the "Start" button in a POD. Is this something I can only achieve by implementing my own activity hook? Is there a documentation about this topic?

    Hello,
    I try to do the same, calling a MII Webservice from a collaboration plug-in...
    Based on my WebDynpro experience, I was expecting to have to reproduce almost the same code, so in the transporter, I write this code :
              MyWebService ws = new MyWebService();
              InputParams inputParams = new InputParams();
              XacuteRequest xacuteRequest = new XacuteRequest();
              // inputParams.setIFEQUIPMENT(inputInformation.getString("RESOURCE",""));
              inputParams.setIFREPORTEDBY(inputInformation.getString("USER",
                        "Unknown"));
              xacuteRequest.setLoginName(Constants.LOGIN);
              xacuteRequest.setLoginPassword(Constants.PWD);
              xacuteRequest.setInputParams(inputParams);
              try {
                   XacuteResponse xacuteResponse = new XacuteResponse();
                   xacuteResponse = ws.getMyWebServicePort()
                             .xacute(xacuteRequest);
              } catch (Exception e) {
                   returnData.put("EXCEPTION", e.toString());
                   returnData.put("SUCCESS", "false");
                   returnData.put("ERROR_MESSAGE", e.getMessage());
    But when executing, I got the error message "can not authentificate the user" (on the local Netweaver, it doesn't reach the MII platform)
    Any idea ? Who can give me a complete example of calling an MII web service ?
    Thanks
    Olivier

  • Client Proxy : How to Call Outbound Generated Proxy in ABAP report ?

    Dear SDNrs.
    I have already created a  Scenario for Client/ Outbound Proxy in XI .
    I have already Generated Client/ Outbound Proxy in ECC .
    Now Question is How to call this generated Proxy in report ?
    Please Guide ..... I dont have any idea ...
    1. before calling any proxy in report what information needs to collect from generated Proxy ?
    2. How to call this generated Proxy in report ?
    Regards
    Prabhat Sharma.

    Hi Prabhat
    You have to use your knowledge about ABAP OO for this.
    It's simple. You created your Proxy Object throught SPROXY transaction, right? Now, you have to instance your class (information avaliable in  SPROXY-> Proxy Objetc -> Class Name) and to use the method displayed there.
    Follow an example:
    DATA: wa_backfeed      TYPE zibrsapglbackfeed_sapgl, 
               wa_output            TYPE zibrsapglrequest,        
               lo_clientproxy       TYPE REF TO zibrco_sapgl_out,   
               lo_sys_exception TYPE REF TO cx_ai_system_fault.
      TRY.
          CREATE OBJECT lo_clientproxy.
          CALL METHOD lo_clientproxy->sapgl_out
            EXPORTING
              output = wa_output.
        CATCH cx_ai_system_fault INTO lo_sys_exception.
                   lo_sys_exception->if_message~get_text( ).
      ENDTRY.

  • How To call java WebService with flex.

    Hi Friends
                         can any body guide me how to use webservices that call java at server side.i have experience of http service dont know how to call the webservices.please give me a basic demo on both side(java and flex).i am using eclipse ide for java and flex.
    Thanks in advance
       Vineet osho

    The ADF Mobile Container Utilities API may be used from JavaScript or Java.
    Application Container APIs - 11g Release 2 (11.1.2.4.0)

  • How to call a maintenance view  from a program

    Hello Abapers,
    Can anybody explain with some examples. How to call a mainetenance view from a program.
    Thanks
    Ranjith.

    Use FM 'VIEW_MAINTENANCE_CALL'.
    REPORT  zmaintaintest.
    VARIABLES / CONSTANTS                          
    CONSTANTS: 
                    c_action(1) TYPE c VALUE 'U',                                 "Update
              c_viewname TYPE tabname value 'ZEMP_EXAMPLE', "View Name
              c_field(6) TYPE c VALUE 'EMPNO'.                            "Field Name
    INTERNAL TABLES
    DATA: itab_rangetab TYPE STANDARD TABLE OF vimsellist,
              v_empno TYPE zempno,
              wa_rangetab TYPE vimsellist.
    SELECTION SCREEN
    PARAMETERS:     p_empno TYPE   zempno   OBLIGATORY.  "Emplyee ID
    AT SELECTION-SCREEN                                                 
    AT SELECTION-SCREEN.
    Chcking the existence of the user in EMPLOYEE table
      PERFORM validate_employee.
    START_OF_SELECTION                                                  
    START-OF-SELECTION.
    This will restrict the user view so that user can only view/change
    Table data corresponding to his/her Employee ID
      PERFORM define_limited_data_area.
    Displaying table maintenance view for a particular employee ID
      PERFORM call_view_maintenance.
    *&      Form validate_employee
    Validate plant entered in the selection screen
    FORM validate_employee.
      SELECT SINGLE empno     u201CEmployee ID
        FROM zemp_example     u201CEmployee Table
        INTO v_empno
        WHERE empno = p_empno.
      IF sy-subrc <> 0.
        MESSAGE 'Not an Valid User' TYPE 'I'.
      ENDIF.
    ENDFORM.                    "validate_employee
    *&      Form DEFINE_LIMITED_DATA_AREA
    To restrict the user view so that user can see/change table data
    corresponding to his employee ID. Here one internal table is
    getting populated with field name as u201CEMPNOu201D (Key field of the table)
    And value as given by user in Selection Screen and this is passed as
    Parameter in function module 'VIEW_MAINTENANCE_CALL'
    FORM define_limited_data_area.
      CLEAR wa_rangetab.
      wa_rangetab-viewfield  = c_field.
      wa_rangetab-operator  = 'EQ'.
      wa_rangetab-value       = p_empno.
      APPEND wa_rangetab TO itab_rangetab.
    ENDFORM.                    "define_limited_data_area
    *&      Form CALL_VIEW_MAINTENANCE.
    Displaying table maintenance view for a particular employee ID
    FORM call_view_maintenance.
      CALL FUNCTION 'VIEW_MAINTENANCE_CALL'      
        EXPORTING
          action           = c_action
          view_name   = c_viewname
        TABLES
          dba_sellist     = itab_rangetab.
    ENDFORM.                    "call_view_maintenance
    Regards,
    Joy.

  • How to call a SQL function from an XSL expression

    Hi
    In R12, in Payroll Deposit adivce/Check writer, We need to sort the earnings tag <AC_Earnings> in to two different categories as regular and other earnings. In the DB and form level of element defintiion we have a DFF which differentiates between the two kinds of earnings. But the seeded XML that is gerneated by the check writer does not have this field.
    The seeded template displays all the earnings in one column. How can we achieve this in the template without modifying the seeded XML.
    The one approach i have is to write a function and based on the return value sort the data. For this I need to know :
    1) How to call a SQL function from an XSL expression that is allowed in BI template.
    If anyone ahs faced similar requirements please share your approach.
    Thanks
    Srimathi

    Thank u..
    but i'd seen that link wen i searched in google..
    Is it possible without using any 3rd party JARs and all?
    and more importantly plz tell me what should be preferred way to call a javascript function?
    Do it using addLoadEvent() or Windows.Load etc
    OR
    Call it thru Xsl? (I donno how to do dis)
    Thanks in Advance..
    Edited by: ranjjose on Jun 3, 2008 8:21 AM

  • How to call a function module from a transformation

    Hi,
    Could somebody please let me know how I can call an abap function module from a transformation (abap xslt program). I know how to call the class methods from transformation, but how do i call a function module..?
    Thanks,
    Shashi.
    Edited by: Shashi Kanth Kasam on Apr 8, 2010 12:45 PM

    Ya. I can do that. But I don't want to use a class and a method to call that function module. Want to directly call function module from transformation. Is that possible..?
    Thanks,
    Shashi

Maybe you are looking for

  • Inventory Balances

    Hi What report can i use to show the opening and closing balances for a material over a 12 month period.  I require the information at sloc level. I also require a how all the stock issues that have been performed from a plant over a 12 month period.

  • PO header and line item text in smartform

    HI, In my smartform I am fetching the 'PO header text', 'item text', and 'material text' for PO with "Include text"( by passing text name, object id etc..) with "no error if no text is maintained" checkbox checked This is working fine In the developm

  • Spry.Widget.ValidationTextfield is not a constructor

    I have worked through the text field validation documentation, but get "Spry.Widget.ValidationTextfield is not a constructor" when I try to run. I have been trying to debug this for a while. Pretty sure I have referenced the js and css correctly. Sur

  • Inconsiste​nt Network Shared Variables

    I will eventually be implementing a controls program on a machine using cfp. Before the cfp gets here, I am getting practice in network shared variables by trying to pass shared variables between two VIs on my computer. I have attached the two VIs an

  • Flash and Mac Power PCs..

    Hi Everyone, I am having a problem with my dual GHz G5 power PC mac and Flash. Recently, all of a sudden sites that use flash have been causing both firefox (3.6.21) and safari to crash so I decided to uninstall flash and download the most up to date