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
TesteReflex.java
Description: Binary data
