3 Replies Latest reply on Oct 22, 2010 10:45 AM by user1634407

    Problem to consume WS release 18

    mónica
      Hello,

      I have tried to do a query over an account with QueryPage method in JDeveloper 10.1.3.5 but i have the following error:

      javax.xml.rpc.soap.SOAPFaultException: Server
      *     at oracle.j2ee.ws.client.StreamingSender._raiseFault(StreamingSender.java:566)*
      *     at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:401)*
      *     at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:114)*
      *     at crm.outlook.proxy.runtime.Account_Stub.accountQueryPage(Account_Stub.java:76)*
      *     at crm.outlook.proxy.AccountClient.accountQueryPage(AccountClient.java:108)*
      *     at crm.outlook.proxy.AccountClient.main(AccountClient.java:73)*

      And the URL format to connect is:
      https://secure-ausomx[ENV].crmondemand.com/Services/Integration;jsessionid=4d60be775d680584e919a0b2fd6bb4260a4be9df6c10ab607eef3e1f167be64b.e3iRbxmMax50bxaNchyRa3yMe0






      The principal part of my source code is the following:

      input.setViewMode("Broadest");
      input.setLOVLanguageMode("LIC");

      listQuery.setPagesize(BigInteger.valueOf(100));
      listQuery.setStartrownum(BigInteger.valueOf(0));
      listQuery.setRecordcountneeded(true);

      id.set_value("AHKA-1ME4Z2");
      name.set_value("");
      externalID.set_value("");
      integrationID.set_value("");


      accountQuery.setId(id);
      accountQuery.setAccountName(name);
      accountQuery.setExternalSystemId(externalID);
      accountQuery.setIntegrationId(integrationID);
      listQuery.setAccount(accountQuery);

      input.setListOfAccount(listQuery);
      myPort.accountQueryPage(input);


      I have tried with insert operation too, but the issue is the same.
      NOTES:
      - I haven't proxy.
      - I have activated "Integration Web Services" privileges.
      - I have activated "Web Services R16 Compatibility" in company profile. And I have tried unchecked it and the problem doesn't resolve.


      The login is correct over CRM OD (in uses WS CRM OD page I can see them), but the WS doesn't do the operation (query an account). It seems can't send the message.

      Any idea what I'm doing wrong?

      thanks in advance and regards.
        • 1. Re: Problem to consume WS release 18
          mónica
          Hi,

          I have validate my environment [ENV] and it is correct.

          I have changed the value of the query:
          id.set_value("= 'AHKA-1ME4Z2' ");
          and I have tried with the following too:
          id.set_value(""); //to query all accounts

          but the issue is the same. The error is when try to send the message, because I think maybe it hasn't a correct format... I would like to see the SOAP message sent, but from JDeveloper 10.1.3.5 I think it isn't possible.

          Any idea where is the problem? Again, the login is correct, but it isn't the query account...

          Regards
          • 2. Re: Problem to consume WS release 18
            user1634407
            Hi,

            I have seen in "Oracle Web Services On Demand Guide (Release 18)" differences with WS Release 16 to do a QueryPage Operation:
            - Obligatories fields --> ListOfEntity (in my case, ListOfAccount), ViewMode (I have specified, Broadest).
            - QueryPage Syntax Release 18: [XML Tag] {Operator} {Value} (Page 86), with Release 16: QueryPage Syntax: {Operator} {Value}
            - Release 18: it's necessary specify the searchspec option over AccountQuery Type.

            So, I have the following:

            accountQuery.searchspec ("[AccountName] = 'Gran Empresa, S.A.'");
            // I have tried too: accountQuery.searchspec("= [AccountName] = 'Gran Empresa, S.A.'");
            // accountQuery.searchspec("= '[AccountName]' = 'Gran Empresa, S.A.'"); listQuery.setAccount(accountQuery); input.setListOfAccount(listQuery);
            output = myPort.accountQueryPage(input);

            Still I am unable to query on CRM OD, how I have to specified the searchspec, querypage...?
            • 3. Re: Problem to consume WS release 18
              user1634407
              Hi,

              I haven't solve the issue... I am really desesperate!!!

              I have tried with WS 2.0 and WS 1.0 from JDeveloper 10.1.3.5 and the error is always the same:
              javax.xml.rpc.soap.SOAPFaultException: Server
              *     at oracle.j2ee.ws.client.StreamingSender._raiseFault(StreamingSender.java:566)*
              *     at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:401)*
              *     at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:114)*
              *     at account_ws2realmenteesws1.proxy.runtime.Default_Binding_Stub.accountUpdate(Default_Binding_Stub.java:312)*
              *     at account_ws2realmenteesws1.proxy.DefaultClient.accountUpdate(DefaultClient.java:74)*
              *     at account_ws2realmenteesws1.proxy.DefaultClient.main(DefaultClient.java:43)*

              My source code is the following:
              public static void main(String[] args) {
              try {
              account_ws2realmenteesws1.proxy.DefaultClient myPort = new account_ws2realmenteesws1.proxy.DefaultClient();
              System.out.println("calling " + myPort.getEndpoint());
              // LOGIN
              String idSesionFull=Conexion_WS.logon("https://secure-ausomxhka.crmondemand.com/Services/Integration","COMPANY/USERNAME","PASSWORD");
              idSesion = Conexion_WS.getSessionId(idSesionFull);

              // UPDATE
              Account[] cuentas = new Account[1];
              cuentas[0] = new Account();
              cuentas[0].setAccountName("TEST FROM JDEVELOPER - WS");
              cuentas[0].setAccountId("AHKA-23T7PS");

              myPort.accountUpdate(cuentas, "OFF");

              // LOGOFF
              System.out.println("desconexión...");
              Conexion_WS.logoff("https://secure-ausomxhka.crmondemand.com/Services/Integration", idSesion);

              } catch (Exception ex) {
              // LOGOFF
              System.out.println("desconexión...");
              Conexion_WS.logoff("https://secure-ausomxhka.crmondemand.com/Services/Integration", idSesion);
              ex.printStackTrace();
              }
              }

              The login is correct. And my user has avaliable the privilege to use WS.

              I appreciate any idea.

              Regards.