Persistencia - Recuperando busca c/ relacionamento

2 respostas
Y

Oi pessoal!

Tenho uma busca em uma tabela que possui relacionamento com mais 3 tabelas de Muitos para um.

public List localiza(int n) throws PersistenceException
      {                                                            
                Query query= manager.createNamedQuery("dados.findNumero");
                query.setParameter("numero",n);
                
                List<dados> lista= query.getResultList();         
                 return lista;
        }

Só que na hora de ler esses dados no JSP

lista= dao.localiza(7);
  
   for (int i=0; i<lista.size(); i++)
   {
       vo=(dados)lista.get(i);
    }

Recebo o seguinte erro:

[size="18"][color="red"]java.lang.ClassCastException: [Ljava.lang.Object;[/color][/size]

Alguem sabe o que pode ser?????

Pesquisando esse problema... parece que tem alguma coisa a ver com relacionamento mas não entendi direito.

Alguem pode me ajudar??? :?:

2 Respostas

F

Quando vc recebe um elemento de uma Coleção que não seja parametrizada (recurso do java 5), o resultado é um Object, portanto é preciso fazer o cast. Esse erro que tá dando aponta que vc tá tentando fazer um cast inválido.

Me parece que quando vc tenta fazer:

O objeto retornado que vc está tentando converter num objeto da classe “dados” não pertence a essa classe e a nenhuma de suas subclasses.

Y

Pior é que é do mesmo olha:

[color=“green”]


No Java (dao)---->

public [b]List<dados>[/b] localiza(int n) throws PersistenceException 
    {                                                            
              Query query= manager.createNamedQuery("dados.findNumero"); 
              query.setParameter("numero",n); 
            
              [b]List<dados> [/b]lista= query.getResultList();          
               return lista; 
      }

No JSP—>

for (int i=0; i<lista.size(); i++) 
 { 
        vo=[b](dados)[/b]lista.get(i); 
   }[/color]
Criado 18 de outubro de 2006
Ultima resposta 18 de out. de 2006
Respostas 2
Participantes 2