2 Replies Latest reply: Dec 13, 2012 1:10 AM by AhmadAl-Zamer88 RSS

    Operation binding & webservices

    AhmadAl-Zamer88
      Hello All,
      What I am trying to do is consume a webservice inside my application module-the proxy client is already created and tested- then use this function through operation binding on my page.
      the code proceeds as :
      1) invoke the operation binding
      2)test is there are errors
      3 get the result and process it
      it's working fine ,but there was this strange case when we were trying to modify the code to handle exceptions better,
      here is where things got weird:
      1)invoke the webservice (first time there is no errors).
      2)shut down the webservice server to invoke an error.
      3)invoke the webservice again

      when testing the code we found that the operation still returns a value -after further inspection it was the last successful result-.
      is this the correct behavior ?

      I am using ADF 11g ,jdeveloper 11.1.1.5.
        • 1. Re: Operation binding & webservices
          Frank Nimphius-Oracle
          Hi,

          when testing the code we found that the operation still returns a value -after further inspection it was the last successful result-.
          is this the correct behavior ?

          No it is not and apparently the call hasn't been made. Debug the client proxy to check if the call is made when invoking the operation binding. The operation binding does not cache values itself. However, if you read the fetched data from a VO (based on an entity) or have data displayed through an iterator then chances are that this information isn't cleared by your code

          Frank
          • 2. Re: Operation binding & webservices
            AhmadAl-Zamer88
            I did debug the code and made sure that the call is made and logged the error resulting from the call
            Caused by: java.io.FileNotFoundException: Response: '404: Not Found' for url: '<the url for the web service>'
                 at weblogic.net.http.HttpURLConnection.getInputStream(HttpURLConnection.java:487)
                 at weblogic.net.http.SOAPHttpURLConnection.getInputStream(SOAPHttpURLConnection.java:37)
                 at java.net.URL.openStream(URL.java:1010)
                 at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.createReader(RuntimeWSDLParser.java:842)
                 at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.resolveWSDL(RuntimeWSDLParser.java:289)
                 at com.sun.xml.ws.wsdl.parser.RuntimeWSDLParser.parse(RuntimeWSDLParser.java:138)
            as for reading the data, I read it directly from the operation binding using the getResult() method