Reflection e Javabeans

Pessoal,

tenho uma classe de teste que está da seguinte forma:

public List<UsuarioBean> ListaUsuarios() throws SQLException {
        
         try {
                stmt = cn.prepareStatement(listUsuario);
                rs = stmt.executeQuery();
        
                List<UsuarioBean> usrList = new ArrayList<UsuarioBean>();
                while (rs.next()) {
                    UsuarioBean usb = new UsuarioBean();
                    
                    usb.setIdUsuario(rs.getString("idUsuario"));
                    usb.setNome(rs.getString("nome"));
                    usb.setTipo(rs.getString("tipo"));
                    
                    usrList.add(usb);
                }
                
                return usrList;
            }catch....

Estou tentando usar reflection para pegar esta classe que esta na variavel usb

o código é:

for(int i=0;i<itemList.size();i++) {
                cls = itemList.get(i).getClass();
                out.println("<tr>");
                
                for (int x=0;x < listMethods.size();x++) {
                    currentMethod = (String) listMethods.get(x);
                    m             = cls.getMethod(currentMethod);
                    obj           = m.invoke(m, 0);
                    content      = obj.toString();
                    
                    out.println("<td>" + content + "</td>");
                }
                out.println("</tr>");
            }

Porém reparem que na linha cls = itemList.get(i).getClass();

Isso me retorna o seguinte erro:

object is not an instance of declaring class

RESUMO:

Eu tenho uma ArrayList populada com objetos de um javabean qualquer,
quero pegar a instancia (que eu ja carreguei) deste cara, porque da forma
como está ele não está identificando a tal instância.

Muito obrigado por qualquer ajuda.

Bom , eu acredito que quando você está pegando a Class, ele deva estar retornando um Object, dái a mensagem

object is not an instance of declaring class

O list está composto de objects…
Tente alguma coisa do tipo “instance of” na linha:

itemList.get(i) (linha 02 arquivo 2)

Então,
dei uma olhada melhor no seu problema…
e cheguei a seguinte solução…

vocÊ está tentando invocar o methodo , não o objeto…
vide a definição do invoke no link.

http://java.sun.com/javase/6/docs/api/java/lang/reflect/package-frame.html

obj - the object the underlying method is invoked from
args - the arguments used for the method call

O argumento obj, é o objeto que vc está invocando o método… ou seja no seu caso, não é o próprio método como você definiu.
Você deveria é pegar o objeto com

Object objTarget = itemList.get(i);

e então usa-lo

obj = m.invoke(objTarget, 0);