[RESOLVIDO]Erro em execução na Collection do DAOhibernate

2 respostas
jeolcavaco

Olá Pessoal,

Estou com o seguinte problema e por favor me corrijam se eu estiver erraod :)

Estou hibernate e em meu DAO preciso que faça um select distinct usando o seguinte código:

public Collection<QuemeQuem> getLotacaoDistinct(ITransaction transaction) throws PortalException
	{		
		
		Session session = getSession(transaction);
		
		StringBuilder queryString = new StringBuilder();
		queryString.append("select DISTINCT lotacao  FROM QuemeQuem");
		
		Query query = session.createQuery(queryString.toString());
		

		return (Collection<QuemeQuem>)  query.list();
		
		
	}

e na minha class cliente preciso fazer um while na collection retornanda mas ocorre um erro em execução:

Collection quemeQuems = quemeQuemDAOHib.getLotacaoDistinct(transaction);

Iterator iterator = quemeQuems.iterator();

while (iterator.hasNext())
{

QuemeQuem quemeQuem = iterator.next();

results.append("");
}

O Error:

Caused by: java.lang.ClassCastException: java.lang.String cannot be cast to br.com.teste.quemequem.QuemeQuem
at br.com.teste.quemequem.dataBoundControl.GerenciaControl.setRenderData(GerenciaControl.java:195)
... 41 more

2 Respostas

ignacio83

Vc concorda que este seu Select:

select DISTINCT lotacao  FROM QuemeQuem

Vai retorna uma coluna só? E essa coluna é String?

O erro está ocorrendo aki:

return (Collection<QuemeQuem>)  query.list();
jeolcavaco

Olá ignacio83,

Muito obrigado pela dica, pois tava batendo cabeça nessa besteira. É uma daquelas coisas que a gente não consegue ver, somente quando uma outra pessoa observa que conseguimos identificar.

Muito Obrigado!!!

Criado 25 de agosto de 2009
Ultima resposta 25 de ago. de 2009
Respostas 2
Participantes 2