3 Replies Latest reply: Jul 10, 2013 10:47 AM by kvsankar RSS

    JDEV Call Web Service using Business Event - WebServiceInvokerSubscription


      Hi All


      We are implementing Integrated SOA Gateway that comes with R12.1.3. As part of the POC, I created a simple OAF page, that has employee number as a field and calls a custom web service. The web service was tested independently through "Test Business Event" page and it works.


      When the same web service is called in an OAF page, it errors with following error

      "oracle.apps.fnd.wf.bes.BusinessEventException: Unexpected Exception in Subscription java://oracle.apps.fnd.wf.bes.WebServiceInvokerSubscription -> java.lang.ExceptionInInitializerError".


      The web service invocation is successful if I deploy the same page to the Oracle instance.


      Are there any additional steps in JDEV that you have to do to make sure that Web Services can be called. I do not want to test my web services by deploying the page to an instance for every change. Here is the code that I have in my AM method to call the web service.


          String eventName = "xx.oracle.apps.nohr.webservice.employee";

          String eventKey = "Test667";

          String evtDataValue = "<InputParameters xmlns=\"http://xmlns.oracle.com/apps/per/soaprovider/plsql/nohr_soa_pkg/get_employee_details/\">\n" +

          "         <P_IN_EMPLOYEE_NUMBER>123456</P_IN_EMPLOYEE_NUMBER>\n" +

          "      </InputParameters>\n";

          String soaHeader = "<SOAHeader><Responsibility>US_SHRMS_NAV</Responsibility><RespApplication>PER</RespApplication><SecurityGroup>STANDARD</SecurityGroup><NLSLanguage>AMERICAN</NLSLanguage><Org_Id>0</Org_Id></SOAHeader>";


          Connection conn = ((OADBTransactionImpl)getOADBTransaction()).getJdbcConnection();


          BusinessEvent event=null;


            event = new BusinessEvent(eventName, eventKey);




            String respData = (String)event.getResponseData();

          }catch (BusinessEventException exception){

            MessageToken[] tokens =

            { new MessageToken("EVENT_EXCEPTION",




          }finally {