private function sessionHandler(event:ResultEvent,o:Object):void
???{
????var usercode:String = String(event.result);
????trace("老婆:" + usercode);
???}
???protected function application1_initializeHandler():void
???{
????var sBiz:RemoteObject = new RemoteObject();?
????sBiz.destination = "sessionBiz";
????sBiz.setSession("老婆","艳儿");
????var ansy:AsyncToken = sBiz.getSession("老婆");
????ansy.addResponder(new AsyncResponder(sessionHandler,falutHandler));
????
//????sBiz.setSession("tt","yaner");
//????sBiz.getSession("tt");
//????sBiz.addEventListener(FaultEvent.FAULT,falutHandler);
//????sBiz.addEventListener(ResultEvent.RESULT,sessionHandler);
???
????
????
???}
???
???private function falutHandler(event:FaultEvent,o:Object):void
???{
????Alert.show("错误信息: " + event.message);
???}
?
?? 在不使用flex组件而在是采用硬编码的情况下,返回值使用AsyncToken 来接收,但要注意AsyncResponder中的
? 参数,falutHandler和sessionHandler必须都是两个参数,原因就是由于AsyncResponder对象在构造方法中就给
_resultHandler和_faultHandler赋值了。??
?? 还有一点就是在//????sBiz.addEventListener(FaultEvent.FAULT,falutHandler);
??????????????????????? //????sBiz.addEventListener(ResultEvent.RESULT,sessionHandler);这样加监听的话,返回值
总是返回两个值(null 和实际值),搞不懂是怎么回事????