O certo é a sua Classe onde se encontra o RemoteObject disparar um ResultEvent.
No método aluFindByName não pode ser retornado nada, pois como é assincrono ele
nunca vai
ter o valor para retornar, por isso, quem deve retornar o valor é um evento
(ResultEvent)
Que você deve definir na sua classe.
Aqui tem uma parte, falta criar o evento, disparar e monitorar na sua classe
que fez a chamada
no aluFindByName.
private function initApp():void{
alunoService = new RemoteObject("alunoService");
alunoService.destination="alunoService";
alunoService.addEventListener(FaultEvent.FAULT, onFault);
alunoService.findByName.addEventListener(ResultEvent.RESULT,
onResultGetList);
}
public function aluFindByName(nome:String): void {
initApp(); // Ao inves de chamar isso, faz no construtor da classe
alunoService.findByName(nome);
}
private function onResultGetList(event:ResultEvent):void {
// Aqui vc pega o result e joga em um evento dessa classe e dispara ele
com o result dentro
// e captura esse evento na classe que fez a chamada.
}
> -----Mensagem original-----
> De: [email protected]
> [mailto:[EMAIL PROTECTED] Em nome de Besse
> Enviada em: quinta-feira, 5 de junho de 2008 10:45
> Para: flexdev
> Assunto: [flexdev] Serviço em classe actionScript
>
>
> Boa tarde galera..
> To com uma dúvida
> Estou tentando acessar o serviço atravas da classe
> actionScript mas nao to conseguindo gerar a lista.
>
> Aqui tah o código
> public function initApp():void{
> alunoService = new RemoteObject("alunoService");
> alunoService.destination="alunoService";
> alunoService.addEventListener(FaultEvent.FAULT, onFault); }
>
> public function aluFindByName(nome:String):ArrayCollection{
>
> initApp();
>
> alunoService.addEventListener( ResultEvent.RESULT, function
> onResultGetList(event:ResultEvent):void
> {
> alunoService.removeEventListener(ResultEvent.RESULT,
> onResultGetList);
> listaAlunos = event.result as ArrayCollection; } );
> alunoService.findByName(nome); return listaAlunos; } eu chamo
> essa função através do flex e ela me retorna uma
> arrayCollection a qual mostro em um dataGrid sei tambem q o
> RO eh assíncrono portando ele me retorna null nessa função
> Gostaria de uma solução para que não retornasse null se
> alguem poder eme ajudar eu agradeço.
> >
>
--~--~---------~--~----~------------~-------~--~----~
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para [EMAIL PROTECTED]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
-~----------~----~----~----~------~----~------~--~---