This discussion is archived
2 Replies Latest reply: Dec 12, 2012 11:10 PM by AhmadAl-Zamer88 RSS

Operation binding & webservices

AhmadAl-Zamer88 Newbie
Currently Being Moderated
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 Employee ACE
    Currently Being Moderated
    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 Newbie
    Currently Being Moderated
    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

Legend

  • Correct Answers - 10 points
  • Helpful Answers - 5 points