Entretanto, não está dando certo pq eu estou passando uma String no campo “descricaoSuperior” e na minha tabela, ela é id de um cara que é da própria tabela em questão, como na tabela anexa. Sendo assim, apresenta o seguinte erro:
org.hibernate.QueryException: not an association: tpgDescricao
É natural pq tpgDescricao é String e tpgSuperior é um int.
Como eu resolvo este problema da criteria com essa referencia a ele mesmo?
Manda o mapeamento dessa Classe TpgTipoGeo, pois nesse trecho:
… voce está dizendo que essa classe possui um atributo chamado tpgSuperior, que provavelmente é uma outra classe que tem um atributo tpgDescricao, e é isso que ele está reclamando, que não encontrou esse mapeamento:
…, aliás, essa sintaxe que voce está usando não faz sentido, com o createAlias, que serve justamente pra reduzir o nome da associação colocando um apelido (alias) pra ele… veja a documentação do Hibernate, o 3º exemplo demonstra o que estou falando:
Só mais uma dúvida, você tem algum material sobre criteria?
Pesquisei aqui no GUJ mas, não obtive sucesso.
Vlw mesmo pela ajuda.
J
jcmaster
marcelo.bellissimo:
Manda o mapeamento dessa Classe TpgTipoGeo, pois nesse trecho:
… voce está dizendo que essa classe possui um atributo chamado tpgSuperior, que provavelmente é uma outra classe que tem um atributo tpgDescricao, e é isso que ele está reclamando, que não encontrou esse mapeamento:
…, aliás, essa sintaxe que voce está usando não faz sentido, com o createAlias, que serve justamente pra reduzir o nome da associação colocando um apelido (alias) pra ele… veja a documentação do Hibernate, o 3º exemplo demonstra o que estou falando:
Aliás, a documentação do Hibernate é muito boa pra tirar dúvidas, recomendo pra todos que estiverem mexendo, ou pretendem mexer com hibernate, dar uma lida especialmente nos exemplos, pois dá pra aprender muito só de ver os exemplos… eu aprendi assim, e sempre que tenho dúvidas já vou direto na documentação dele… ajuda muito mesmo…