| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2007 19:01:22
|
thiago_algo
JavaTeenager
Membro desde: 27/07/2004 11:23:41
Mensagens: 186
Offline
|
Pessoal,
Se eu declarar uma collection como abaixo:
Vector<MinhaClasse> vetor = new Vector<MinhaClasse>();
Tem como eu recuperar a referência a MinhaClasse com reflection, ou seja, tem como eu saber que tipo de objeto está vindo nesta collection?
Obrigado
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/04/2007 19:53:34
|
thingol
Moderador
Membro desde: 29/07/2004 16:10:13
Mensagens: 17543
Offline
|
A resposta simples é "não", devido ao conceito de "erasure".
Entretanto, rode e estude o programa abaixo . (Evite criar classes anônimas como as mostradas abaixo; estão aí só para você entender alguns conceitos).
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/04/2007 11:07:24
|
mister__m
Virtual Machine Man
![[Avatar]](/images/avatar/89b9c689a57b82e59074c6ba09aa394d.jpg)
Membro desde: 18/03/2005 16:13:17
Mensagens: 736
Offline
|
Como o thingol disse, não existe uma maneira direta de ter acesso ao parâmetro, mas dependendo da situação existem outras soluções. O que exatamente você quer fazer?
|
Michael Nascimento Santos, aka Mister M
Summa Technologies do Brasil - http://www.summa-tech.com/
genesis: Uma nova forma de desenvolver aplicações - https://genesis.dev.java.net/
ThinNB: Suporte a Thinlet no NetBeans - https://thinnb.dev.java.net/
Líder da JSR-310 - Date and Time API
Expert Group Member das JSRs 207 (PD4J), 250 (Common Annotations), 270 (Java 2 SE 6.0), 296 (Swing Framework) e 303 (Bean Validation)
SouJava: Fortalecendo a comunidade Java brasileira - https://soujava.dev.java.net/ https://www.soujava.org.br/
JSR Community @ java.net - http://community.java.net/jsr
Blogs - http://blog.michaelnascimento.com.br/ http://today.java.net/pub/au/80
Twitter - @mr__m |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/04/2007 12:28:06
|
thiago_algo
JavaTeenager
Membro desde: 27/07/2004 11:23:41
Mensagens: 186
Offline
|
mister__m wrote:Como o thingol disse, não existe uma maneira direta de ter acesso ao parâmetro, mas dependendo da situação existem outras soluções. O que exatamente você quer fazer?
Temos um sistema legado em Kylix que recebe uma estrutura própria em xml contendo dados. O problema é que o Kylix precisa dos metadados, ou seja, tipo dos campos, tamanhos dos campos. Nosso webservice atende as silicitações, gera os xmls e devolve e isso funciona muito bem, desde que a collection que contém nossos VOs ou TOs não esteja vazia, porque daí não conseguimos pegar os metadados deles. O problema é que mesmo que a resposta do servico seja zero "registros" o Kylix necessita dos metadados. Como estamos trabalhado java 5 e possuímos o recurso de generics, pensamos em capturar as informações de metadados diretamente da referência a generics na collection. Um probelmas que temos é que o sistema em kylix é legado, ou seja, não podemos mais fazer alterações nele, então temos que alterar os nossos serviços para atender o kylix. E uma outra coisa, a conversão para xml que o kylix precisa receber é feita automaticamente, por isso precisamos pegar o tipo de objetos que a collection deveria possuir em runtime.
Obrigado pela atenção
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/02/2008 15:43:49
|
danieldestro
Moderador
![[Avatar]](/images/avatar/a5bfc9e07964f8dddeb95fc584cd965d.png)
Membro desde: 04/09/2002 17:26:16
Mensagens: 6667
Localização: São Paulo / Catanduva
Offline
|
This message was edited 2 times. Last update was at 19/02/2008 15:46:04
|
gotjava?
Doe sangue
What You See Is What You Get!
Apostilas de Java grátis!
RefsCALL - Bandeira Eletrônica para Árbitro de Futebol |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/03/2008 11:16:24
|
rafaelsantini
JavaBaby
![[Avatar]](/images/avatar/3eb65004054f5d21fca4087f5658c727.jpg)
Membro desde: 28/03/2006 19:44:28
Mensagens: 86
Localização: Capivari de Baixo - SC
Offline
|
Estou com o mesmo tipo de problema: identificar o tipo de uma lista.
Recuperar o tipo de um array é possível:Output:
java.lang.String
Estou realizando a implementação de um conversor genérico para o JSF baseado no artigo Generic converter for domain model in JSF.
O meu problema ocorre quando tenho um selectManyCheckBox, pois o valor dele é uma lista. Então, ao recuperar o tipo do valor do componente [component.getValueBinding("value").getType(context)], o tipo lista é retornado. Porém, preciso saber o tipo dessa lista.
Com a possibilidade de recuperar essa informação usando um array, acho que vou substituir a lista por um array. O que vocês pensam sobre isso?
|
|
|
 |
|
|