Bom dia Daniel,

Referente a isto:

*Se existir uma forma, usando reflection de identificar os atributos a*
> * partir do Objeto já instanciado e não da classe, ai sim resolve*
> * também.*
>

Tô te enviando um arquivo que contém um teste de Reflection feito com uma
instância de uma classe Object.
Pode vir a resolver o problema, sendo que no exemplo a classe Teste existe
no Java e no seu exemplo quem vai enviar a classe é o Flex, então dependendo
da maneira como o BlazeDS trata este objeto mandado(ASObject) talvez
funcione.
Infelizmente não tive mto tempo para fazer mais testes =( mas vale o teste.
Se o ASObject for um Objet do Java "mascarado" provavelmente funcionará. Se
não for, caso seja um Object simples provavelmente mostrará apenas os nomes
dos atributoos de Object (toString....etc).

Quanto a isto:

*Se tiver um jeito de pegar o valor do atributo em itemCollection sem a
>  necessidade de transforma-lo para array, ai matamos a charada!*
>

Ainda não consegui implementar o seu código recriando o ambiente para tentar
ter alguma idéia q te ajude, hj pela noite tentarei fazer isto.

=D

Desculpe a demora ai, e espero ajudar...



Em 3 de março de 2010 17:56, Daniel Vitor <[email protected]> escreveu:

> Sem problema ;).
>
> De certa forma, já encontrei o caminho das pedras, mas ainda está com
> problema na hora de converter os tipos, conforme post anterior.
>
> Olha a salada que tá virando:
>
> No Flex:
>
> item.atributo1 = 0.05695965574241735
> item.atributo10 = 0.6418867287288352
> item.atributo11 = 0.8115999611356083
> item.atributo2 = 0.22749410351936328
> item.atributo3 = 0.12451350684040408
> item.atributo4 = 0.991579828720098
> item.atributo5 = 0.8465219072066639
> item.atributo6 = 0.8115588886448022
> item.atributo7 = 0.9902025883402795
> item.atributo8 = 0.15380700669034497
> item.atributo9 = 0.5125763560999005
>
> Após convertido em array no java fica:
>
> array[0] = 0.15380700669034497
> array[1] = 0.5125763560999005
> array[2] = 0.8115588886448022
> array[3] = 0.9902025883402795
> array[4] = 0.991579828720098
> array[5] = 0.8465219072066639
> array[6] = 0.22749410351936328
> array[7] = 0.12451350684040408
> array[8] = 0.8115999611356083
> array[9] = 0.05695965574241735
> array[10] = 0.6418867287288352
>
> No java, antes de converter para array, enquanto ainda é ASObject, os
> valores e propriedades estão corretos, não é problema no envio.
>
> A função de atualmente é:
>
> public Object toJava( List<Object> value )
> {
>         // Convertendo o List em Array
>         Object[] arr = value.toArray();
>
>         //Tranformando o elemento 0 do  Array em ASObjetc
>        ASObject item = (ASObject) arr[0];
>
>         //Transformando o elemento com x atributos em um Collection
> (ArrayList) com x posições
>        Collection<Double> itemCollection =
> item.values();
>
>        // Convertendo o List em Array, Agora meu objeto com x
> atributos é um array de x possições
>         Object[] itemArray = itemCollection.toArray();
>
>        return itemArray;
> }
>
> o problema é gerado na seguinte linha:
>
> Object[] itemArray = itemCollection.toArray();
>
> Aqui é que bagunça tudo.
>
> Se tiver um jeito de pegar o valor do atributo em itemCollection sem a
> necessidade de transforma-lo para array, ai matamos a charada!
>
> Abraç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
>



-- 
______________________

Atenciosamente,

Rafael Comim

-- 
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

Attachment: TesteReflex.java
Description: Binary data

Responder a