Problemas com Hibernate

Olá amigos,

Estou enfrentando um problema com Hibernate HQL. O que acontece que é que tenho as tabelas atividade e terra. O relacionamento dessa tabela é de muitos para muitos onde existe uma tabela associativa UsoTerra. Preciso fazer uma busca de todas as atividades a partir de um determinado id da terra. Para isto fiz a consulta


select * from gsw_atividade left join gsw_uso_terra
      on gsw_atividade.id = gsw_uso_terra.id_atividade and gsw_uso_terra.id_terra = 1

E isto me retorna tudo ok. O que acontece é que preciso fazer isto em HQL. Tentei o seguinte:

String hql = "from Atividade a inner join fetch a.listaUsoTerra as lut " +
		" where lut.id = " +idTerra+ " order by a.descricao";	

Mas esta busca me retorna apenas um registro… (Verifiquei no hiberante reference que não devemos utilizar aliases para joins do tipo fetch e nem os utilizar em clausulas where ) então tentei


String hql = "from Atividade a inner join fetch a.listaUsoTerra as lut " +
		" where a.listaUsoTerra.id = " +idTerra+ " order by a.descricao";  			

E ele me retorna exatamente três registros!! Porém todos iguais…

Se alguém souber… por favor ajude…

Obrigado