Duvida ao ler List <Object[]> erro java.lang.ClassCastException

1 resposta
P

estou querendo criar um List Object mas quando tento ler o que tem
na lista de Object me dá o erro Cast ???

na linha UserImpl l_user = (UserImpl) resultElement[0];

O que está errado ???

StringBuffer jhl = new StringBuffer();
			 jhl.append("SELECT user " );
			 jhl.append(" FROM UserImpl user");


 List <Object[]> itens = manager.createQuery(jhl.toString())
			 .setParameter(1, new Long(2))
			 .getResultList();


 for (Object[] resultElement : itens) {
					UserImpl l_user   = (UserImpl) resultElement[0];
					
					System.out.println(" Usuario  ");
					System.out.println("Id ="+l_user.getId());
					System.out.println("Email  ="+l_user.getEmail());
					System.out.println("Name  ="+l_user.getName());
					System.out.println("_________________________________________");	
				}

erro:

= java.lang.ClassCastException: br.com.user.UserImpl

1 Resposta

M

E por que não usa List<UserImpl[]>? Não é necessário cast. Melhor ainda, porque não usa List? Isso evita um array dentro de um List, que causa toda essa bagunça.

Criado 30 de janeiro de 2009
Ultima resposta 30 de jan. de 2009
Respostas 1
Participantes 2