Handling errors for a Connection object
169
// initialization code specifies gateway, creates connection, calls service
if (inited == null)
{
inited = true;
NetServices.setDefaultGatewayUrl("http://localhost:8300/flashservices/
gateway")
var gatewayConnection:Connection = NetServices.createGatewayConnection();
// specify this object (this) as the responder object
howdyService =
gatewayConnection.getService("remoteservices");
}
// function specific result handler objects
function helloWorld_Result()
{
this.onResult = function(result){
// display successful result
messageDisplay.text = result;
}
}
function whatsUp_Result()
{
this.onResult = function(result){
// display successful result
resultDisplay.text = result;
}
}
// general responder object can be used for multiple service functions
function general_Result()
{
this.onResult = function(result){
trace("result is: " + result);
}
}
// call service functions
howdyService.helloWorld(new helloWorld_Result());
howdyService.whatsUp(new whatsUp_Result());
howdyService.howsItGoin(new general_Result());// uses general responder
howdyService.whadJaSay(new general_Result()); // uses general responder
Handling errors for a Connection object
Flash Remoting receives a status event instead of a result if either of the following conditions
occurs:
•
The Flash Remoting gateway encounters an error.
•
A service function encounters an error (throws an exception).
You write status event handlers to respond to the errors, typically by displaying an error message
or logging the error information. In some cases, you might be able to include recovery code, such
as code to retry a call to a busy server, in the error handler.