Flex :: Sychronous Web Service Calls
Sep 10, 2010Does adobe flex supports sychronous web service calls justify your answer???
View 1 RepliesDoes adobe flex supports sychronous web service calls justify your answer???
View 1 RepliesWeb service calls are asynchronous in flex, but I wanted to wrap a web service call in a class to provide synchronous encapsulation. Something like the below - the user could call getMyMethodResult and get the result returned by the web service. I expected the thread that recieved the soap response would populate the variable _result and mean that getMyMethod would, after a time, find _result is not longer null. But it doesn't! Can anyone explain why this does not work?[code]
View 1 RepliesI have a web service written in ColdFusion. In this web service, there are two functions; one is to return all the questions in a quiz and the other one is to return all the answer selections to the questions in a quiz.
[Bindable]
private var questionArray:ArrayCollection;
private var cfquiz:RemoteObject;
[code]....
I have the codes above. loadQuestions is called at creationComplete to retrieve the questions. Things are working fine. What I want to do is to call another function within the same web service, returnAnswers, to return the answer options for a question. Since I have cfquiz associated to the web service already, I was using cfquiz to call returnAnswers. However, there is an event listener associated to cfquiz already, resultHandler is being called when returnAnswers comes back with the results.is it possible to check which function returns the results within resultHandler? If so, how? And second, what is the best way to handle calls to multiple functions within the same web service?
In Flex, I'm making a set of asynchronous calls:
service.method1.send().addResponder(responder1);
service.method2.send().addResponder(responder2);
service.method3.send().addResponder(responder3);
I want to execute some code after all of these service calls have returned (either success or failure, I don't care which). How can I do this?
I have a flex app hosted on a windows server running IIS. That same server has some rest services that the app interacts with. The rest services have windows authentication so that their urls cannot be called without credentials. The flex app needs to be accessible to the public so its files are accessed by enabling anonymous access. The problem is of course that when the app tries to call the rest services the browser pops a dialog box asking for windows username and pass. I naively hoped that if I set the anonymous access on the flex site to use the credentials of a windows account that had permission to view the rest services that would resolve the matter. I hoped that IIS would see the browser used the proper creds to view the flex app and use those same creds to get the rest services. Wrong, that didn't work.
So is what I want impossible? I'd like to find a way to not force the user to enter windows creds, keep the rest services using windows authentication, and have the flex app able to access the rest urls. Any ideas? Am I missing something? Also, it may turn out that the flex app is running on http and the rest services must be called with https. Does that change your answer?
I have a several Grails services that are invoked from Flex code using Spring BlazeDS integration. I wanted to add some general debug logging using the groovy metaClass. I have the following in a bootstrap class:
class MyBootStrap {
def grailsApplication
def init = { servletContext ->
[code]....
Has anyone used or is aware of a service browser to test AMF calls?I am looking for a tool similar to ZamfBrowser ( http:[url].... ), but one that works for the Java environment.ZamfBrowser is geared towards AMFPHP.The idea here is to provide a service browser, that allows developers to test Java services using the AMF protocol, without having to go through the Flex UI all the time. There has got to be something out there already for this, but I can't seem to locate anything..... It's kind of funny and strange that a service browser exists for AMFPHP but not for regular AMF calls in a Java environment.
I would imagine something exists under Blaze or LCDS? ...Trying to find it in the docs but can't seem to find anything ....The best alternative I can think of at the moment is to use FlexMonkey to record stuff, and then to simulate it using that....which is okay I guess but still sucks because you have to go in and create the Flex UI first, whereas with something like ZamfBrowser, you simply point it at the service calls,it tells the server-side developers if their code works, etc. generates the required as3 classes for you... and makes the integration process much easier in a large team.
Using the web services panel, I've connected to a web service, but all the method calls will only show the param structures/types - not the result structures/types. To the best of my knowledge, I'm sending the right parameters, in the right structure, but always I get an empty response.The web services panel:
Debugger results (with breakpoint placed just after a response is received):
Where might the problem be?
I am experiencing a strange problem when I want to bind a service to a button or something else:
[Code]...
I can add the services to the Data Services panel but I have two strange things:
1) when I want to configure the return type he doesn't let me create a new ValueObject type, I only get the bottom datagrid which states: Properties returned by the operation: Property: country_Id, provence_Id, city_Id, id_cdpc, district_Id with the related values on the right side. Why can't I create a new data type on the top?
2) When I accept this and want to add the service call to a button (drag&drop) I get the following error: Error occurred while generating code. Make sure that there are no compiler eroors and try again after reopening the file. Componentn type services.cdpc.CDPC not found... (ps: When I perform a Test Operation everything seems to be ok, I get the expected output values)
I have a component called a TableDataViewer that contains the following pieces of data and their associated set functions:[code]This component is nested in another component as follows:[code]Looking at the trace in the logs, the call to set table is coming before the call to set dataSetLoader. Which is a real shame because set table() needs dataSetLoader to already be set in order to call its load() function.So my question is, is there a way to enforce an order on the calls to the set functions when declaring a component?
View 1 RepliesHow can i settings crossdomain.xml my flex project.* this is my crossdomain.xml.
<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy SYSTEM "/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
<site-control permitted-cross-domain-policies="all"/>
[code].....
I've tried lots of different methods but my project send error message "Security error accessing url Unable to load WSDL. If currently online, please verify the URI and/or format of the WSDL [URL]"
put the file in different places
C:wampwwwMYPROJECTin-debugcrossdomain.xml
(my swf url : http://localhost/bin-debug/test.html checked http://localhost/bin-debug/crossdomain.xml its ok)
C:wampwwwcrossdomain.xml
I added the load line of the project
protected function application1_initializeHandler(event:FlexEvent):void
{
Security.loadPolicyFile("http://localhost/MYPROJECT/bin-debug/crossdomain.xml");
}
if flex server type select none everythings ok. but server type select PHP need crossdomain.xml how can i fix.
I am trying to access a .Net service which requires an authentication header. If WebService is used it works fine. But when it is accessed using HTTPService it throws error. The project is already done by somebody else using HTTPService. Now changing to webService requires some time since there needs to be modification in a lot of files.
Below is the SOAP envelop required by the service.
[Code]...
I am using Flex and with the AS3 libraries.I can make calls etc but when i get values returned in the event,they are in RawResult. I am not sure how to turn that into an arraycollection etc so i can make use of it in flex, or if there is a better way of accessing the data, generally speaking.
var friendsDoc : XMLDocument = new XMLDocument(e.data.rawResult);
var decoder:SimpleXMLDecoder = new SimpleXMLDecoder(true);[code]....
Is there a way to make synchronous calls using RemoteObject in Flex?
Solution: Add the second call to the result handler of the first call, having a token check for multiple originating calls.
I have to use flex 4 for the front end and php with Symfony 2 as backend. I want to use amf to call remote methods on the php. I have known that Symfony 2 does not have plugin for amf communications with Flex. In this case how can I connect them? or I have to use httpservice/webservices which is slow in performance.
View 1 RepliesIs there some sort of configuration settings in FlashBuilder 4.5 where you can easily switch between webservice urls? Right now I have to delete and recreate the web service every time I switch from local to production and vice versa.
View 2 RepliesI have the following application in flex. I want to call two different remote objects in parallel.
[Code]...
Now what the methods do is to print sth. when they are called, then wait 8 secs and print sth. after that. When clicking each button seperatly, it works, both methods are started in parallel. However, calling both method the same time, leaves one service to wait with its call while until the other is executing. How can I avoid that?
I have a Flex 3 application that makes a call to a webservice. That webservice calls returns a 2 Mb file that flex reads and parses. The problem is that it takes sometimes 45 seconds. I was wondering if there is a way to cache the response form the webservice? So the next time I load the flash movie it doesn't have to re-download the full file but just the updated data.
View 2 RepliesWe are converting a Flex application to use some REST APIs.
When adding the mx.rpc.http.HTTPService class to the code, the SWF binary output grew from 175KB to 260KB. This is an unacceptable hit.
Is there any better way to do lightweight REST calls from a Flex app? Are we better off using an external interface JS just to make the calls from there?
I have this button:
<s:Button includeIn="MeniuPrincipal" label="Descarcare Date" click="downloadLmData(event)"/>
And this click event handler:
protected function downloadLmData(event:MouseEvent):void {
downloadData('competenta', 'competente');
downloadData('localitate', 'localitati');
}
The downloadData function looks like this:
private function downloadData(item:String, items:String):void {
try {
var colVar:String = 'col' + cappitalize(items);
this.status = "Descarcare date in curs...";
this[colVar] = null;
[Code].....
The problem is, all calls are ignored, except for the first one. Is there any "queuing" mechanism which would allow all calls to be made?
I have a Flex 3 application that makes a call to a webservice. That webservice calls returns a 2 Mb file that flex reads and parses. The problem is that it takes sometimes 45 seconds. I was wondering if there is a way to cache the response form the webservice? So the next time I load the flash movie it doesn't have to re-download the full file but just the updated data.
View 1 RepliesI'm on Flash Builder 4.5 and I'm using remote object with amfphp and when I call two method (method1 and method2) at the same time the response of method2 always arrives after method1's response even though method2 is much more faster to return the result.re's the scenario:I set a remote object which refers to a remote php class "Newletter" which contains the sendNewsletter and getProgress methods.Here's the code:-sendNewsletter() reads the email archive and send the newsletter. After each email has sent it writes a log into the database.-getProgress() reads the log wrote by sendNewsletter, counts how many email have been sent, compares it with the total number of the email that have to be sent and return the progress percentageFrom the flex interface the users select a Newsletter to be sent and click on a "send" button which calls a function that calls the sendNewsletter() and then instantiate a loop of calls to getProgress (as you can see when getProgress returns something it calls the setProgress which updates a progress bar and calls getProgress again until the progress percentage reach 100%.
So right after I call sendNewsletter() I call getProgress() on the same remoteClass().sendNewsletter() can take several minutes to complete (in my tests for sending 4 email it takes about 4 seconds so I think that sending thousands of email will take much more!!) and the trouble I'm encountering here is that getProgress() result arrives only after sendNewsletter() concludes its execution while what I would like to achieve is:
I have 5 Cairngorm Events that I am dispatching at the same time(one right after the other) - all of which call a separate HTTP Service. This works fine when I run the application locally however when I deploy my project to a Glassfish server, it only works intermittently, with the app hanging when it doesn't work.
My temporary work around to this is to chain some of the events together so less call are going out at once, but I don't really like this as a viable solution because it slows down performance.
Is there a maximum number of HTTPService requests that Flex can make at once before it hangs?
I'm developing a Flex application and am having some trouble working with asynchronous calls. This is what I would like to be able do:
[Bindable] var fooTypes : ArrayCollection();
for each (var fooType : FooType in getFooTypes()) {
fooType.fooCount = getFooCountForType(fooType);[code]....
The issue I'm running into is that both getFooTypes and getFooCountForType are asynchronous calls to a web service. I understand how to populate fooTypes by setting a Responder and using ResultEvent, but how can I call another service using the result?
I am working on an app, where the server time needs to be displayed on a Flex app.
The idea is to make a BlazeDS remoting call getServerTime() once during the app intialization and then use a local Timer class to keep updating the display.( I don't want to bombard server with getServerTime() for each second). My question is, once I have a AS3 Date object. How do I increment it by seconds?
[Code]
So here is the mxml i would like to get working:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
[code]....
I have a grails application that will be rendering an html page into a pdf file and I have a flex application sitting on a server that is going to accept REST parameters and construct a graph based on the parameters (which will be formatted in JSON). What I want to do is make a call to the flex app with my parameters and have the flex app create the graph, render a JPEG of the graph, then send an image back to grails. In other words, I want to put an HTML img src=that will render the image directly to the page so that my PDF Plugin in grails will render it into the PDF.
View 1 RepliesIs it possible to develop flex/Air application as a service. The application doesn't require any GUI it should run as service in embedded Linux/Linux/Windows.
View 1 RepliesI have an iterator service that works fine already and returns a correctly structured values to my flex application through my Zend Amf server
$contacts = array();
mysql_connect( 'localhost', 'root', 'test' );
mysql_select_db( 'test' );
[code].....
determine what is preventing my web service from being called. We have a working application in production and the developer who wrote it has left. am trying to build it on my machine and I can see a web service call in fiddler being made with the URL "/Services.asmx/MethodName" (as a GET request).I have set my break point in the asmx web service and it is not being hit. All I get in the flex front end is a pop up with " The remote server failed to respond and may be offline. he web service is in the same application as the web app that hosts the SWF file.I have the cross domain policy file in place.
View 1 Replies