Ler conteudo de variavel Object no AS3?

2 respostas
chamuska

Pessoal, tenho uma pagina feita em Flex, nessa pagina tenho uma função que é chamada pelo Java e que passa um valor em um Object. Como posso fazer para ler os dados desse object no AS3 ?

Não tenho o codigo fonte aqui, mas se não me engano, para teste, eu fiz assim no java na hora de chamar a função:

E na função AS3 esta assim:

public function recebeIds(listaIds:Object)
{
.
.
.
}

Os dados são duas strings que devem ser passados usando um Object, como posso ler esses dois dados no AS3 ?!

Obrigado!

2 Respostas

luistiagos

já tentou fazer cast? (listaIds[0] as String)

chamuska

Bom, agora estou em casa e tenho os códigos!

Quando o Java chama a função no Flex:

public static void usuarioChatPrivado(String idDestino, String idOrigem)
{
	try {
		System.out.println("Enviando");
		IConnection conn = Logados.getConexao(Red5.getConnectionLocal().getScope(), idDestino);
		
		
		IServiceCapableConnection service = (IServiceCapableConnection) conn;
		service.invoke( "addChatPrivado", new Object[] { "idUsuario", "idCliente" } );
	} catch (Exception e) {
		System.out.println("ERRO.");
	}
	
}

E a função no Flex:

public function addChatPrivado(dados:Object):void
{
	for each ( var usuario:Object in dados )
	{
		if ( usuario != null )
		{
			Alert.show(usuario[0].toString());
		}
	}		
}

Nunca usei o cast, nem sei como funciona!
Onde devo usar ele ?!
Tem como faze um exemplo com esse cofigo que postei agora ?!!

EDITADO**

Fiz um cast na função Flex! Adicionei apenas uma string no Object que é criada no Java e fazendo um Alert.show(String as (dados)); eu consegui imprimir o valor que foi passado.
Mas não estou conseguindo fazer isso quando adiciono duas string no Object.

Como posso fazer ?!

Obrigado!

Criado 21 de maio de 2012
Ultima resposta 21 de mai. de 2012
Respostas 2
Participantes 2