7 Replies Latest reply on Jun 6, 2009 12:10 AM by Graham Robbo

    FB4 Beta Calling Webservice takes ages

    Graham Robbo

      Not sure if this is where I should be recording problems with FB4 Beta but I have noticed an issue calling a webservice.

       

      I have used the Data->Connect to WebService to introspect the WSDL and generate client proxy components.

       

      Then I dragged and dropped the service from the Data/Services window onto a DataGrid. Let me say how absolutely fantastic I think all this works. It is a huge improvement in development time from FB3.

       

      Anyway, when I test my application it all works fine except there is a long delay between when the application loads and when the web service is actually called. The dataGrid_creationCompleteHandler is called and in turns calls the webservice - but it is at least 60 seconds before the HTTP request to the webservice is actually fired.

       

      This 60 second delay seems to happen at a few different points. Sometimes when I load the application the datagrid is rendered and then I immediately get the hourglass (clock) appear as the webservice method is called. The actual HTTP request is intiated about 60 seconds later. Sometimes when I load the application it is 60 seconds before the hourglass appears, and then a further 60 seconds before the HTTP request is fired. Sometimes it also appears that the HTTP request is no fired at all - bt maybe that is just a longer delay than usual.

       

      Cheers

      Graham Robbo

        • 1. Re: FB4 Beta Calling Webservice takes ages
          Shikha Kaushik Level 1

          Hi Graham,

           

          Could you please provide your Web Service or sample app  so that we can reproduce the issue at our end.

           

          Thanks,

          Shikha

          • 2. Re: FB4 Beta Calling Webservice takes ages
            tim_buntel

            Hi Graham,

            Have you tried running your app with the Network Monitor?  That will allow you to see exactly what requests are being made and how long they are taking to complete.

            Tim

            1 person found this helpful
            • 3. Re: FB4 Beta Calling Webservice takes ages
              Graham Robbo Level 1

              Hi Shikha and Tim,

               

              Thanks for your interest in my issue.

               

              Unfortunately my test web service is located inside my firewall and I cannot provide access to it. It is a simple SOAP service published on a SAP Web Application Server version 7.02. I have used XMLSpy to test the WSDL introspection and calling of the webservice and it all works fine and responds immediately when using this tool.

               

              The Network Monitor is interesting. What a great tool this is. I have not seen it before so I assume it is new with FB4. Great stuff.

               

              Anyway, the first thing I noticed is that there is a HTTPService call to retrieve the WSDL. This is not what I expected to see as the webservice introspection tool has already generated the proxy objects I need for this webservice so I am not entirely sure why it is doing this.

               

              When I run my application the first entry I see in the Network Monitor is for this call to the WSDL URI.

               

              Status = Pending

              Request Time = 8:30:42

              Service = HTTPService

              Operation = GET

              URL = http://myserver/wsdl...

               

              By setting breakpoints in the SAP SOAP Runtime I can see when the request actually hits the server. This usually takes a minute or so but on rare occassions happens immediately.

               

              When the request arrives at the server the "Request Time" field in the Network Monitor gets updated. Using a recent example it changes from 8:30:42 to 8:31:27. Note this happens while the server is sitting on my breakpoint and therefore before the server has responded to the HTTP request and so the Network Monitor still shows the status as "Pending". I think this changing of the "Request Time" field in the Network Monitor is confusing and misleading.

               

              Once I continue the server processing it sends the response back to the Flex Application which then sets the Network Monitor status field to "OK" and initiates the WebService call.

               

              Status = Pending

              Request Time = 8:31:43

              Service = WebService

              Operation = POST

              URL = http://myserver/wservice...

               

              At this time it also updates the "Response Time" field of the WSDL request with the same time as the "Request Time" field of this request.

               

              Again the WebService request sits in "Pending" status for some time before it is sent to the server. When the request arrives at the server the "Request Time" field in the Network Monitor is updated (in my example from 8:31:43 to 8:32:53) and this also updates the "Response Time" of the earlier WSDL request in the Network Monitor. Again I must say I find this changing of Network Monitor fields potentially misleading.

               

              Once the server sends the response to the client the "Response Time" field for the webservice request is updated and the status changed to "OK".

               

              I have created an identical application that consumes the service defined in the WSDL URI http://livecycledata.org/services/ProductWS?wsdl and it works fine. So it seems there is something specific about the SAP server that is causing the issue.

               

              One observation is that the User Authentication pop-up happens right at the time the WSDL request appears in the Network Monitor even thought the request doesn't get received at the server for some time. My understanding of basic authentication is that it is triggered by a HTTP request/response cycle. Maybe there is an issue coming into play when the WSDL URI and/or the webservice require authentication? Certainly my debugging code on the server will not be triggered until user authentication is completed. Perhaps the client is failing to resend the HTTP request with user credentials attached until some timeout passes?

               

              That's it! If I enter invalid user credentials it takes about a minute before I get a response. The client must not be sending the newly credentialled HTTP request immediately.

               

              Logged this as a bug. https://bugs.adobe.com/jira/browse/FB-20178

               

              Cheers
              Graham Robbo

               

              Message was edited by: Graham Robbo

              • 4. Re: FB4 Beta Calling Webservice takes ages
                Shikha Kaushik Level 1

                Hi Graham,

                 

                Since unfortunately we can't have an access to your Web Service we would like to investigate the issue further.

                 

                Could you please try disabling Network Monitor and see if the response comes any faster.

                 

                Since Network Monitor has its own debugger thread we would like to know if that is the reason for this delay.

                 

                Please let me know if you need any information.

                 

                Thanks,

                Shikha

                • 5. Re: FB4 Beta Calling Webservice takes ages
                  Shikha Kaushik Level 1

                  Hi Graham,

                   

                  Since unfortunately we can't have an access to your Web Service we would like to investigate the issue further.

                   

                  Could you please try disabling Network Monitor and see if the response comes any faster.

                   

                  Since Network Monitor has its own debugger thread we would like to know if that is the reason for this delay.

                   

                  Please let me know if you need any information.

                   

                  Thanks,

                  Shikha

                  • 6. Re: FB4 Beta Calling Webservice takes ages
                    Ram Krishnaiyer (Adobe) Adobe Employee

                    Hi

                    Are you able to reproduce the problem if you run the application with network monitor disabled?

                    Thanks

                    Ram

                    • 7. Re: FB4 Beta Calling Webservice takes ages
                      Graham Robbo Level 1

                      Hi Ram,

                       

                      Yes I can. Network Monitor makes no difference.

                       

                      Note I have logged this as issue FB-20178.

                       

                      Cheers

                      Graham Robbo