| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 09:46:50
|
MARCOSTEIXEIRA
Thread.start()
Membro desde: 22/02/2007 09:29:31
Mensagens: 28
Offline
|
Oi pessoal,
Estou com a seguinte dúvida:
Tenho duas classes:
public class Curso{
private Integer id;
private String nome;
private Disciplina disciplinas;
...
metodos set e get
...
}
public class Disciplina{
private Integer id;
private String nome;
private String periodo; // pode ser "N" (noturno) ou "D" (diurno)
...
metodos set e get
...
}
Agora quero criar uma criteria que retorne um determinado curso e suas respectivas disciplinas. Estou usando o seguinte código:
Criteria select = sessao.createCriteria(Curso.class);
select.setFetchMode( "disciplinas", FetchMode.JOIN );
select.add(Restrictions.like("nome", "Engenharia de Computacao"));
List objetos = select.list();
Até aqui tudo bem, funciona muito bem, ou seja, traz TODAS as disciplinas do curso "Engenharia de Computacao".
Mas, a questão agora é que eu quero apenas as disciplinas de TAL curso que possuam o atributo periodo igual a "N" (noturno).
Já tentei fazer algo como:
Criteria select = sessao.createCriteria(Curso.class);
select.setFetchMode( "disciplinas", FetchMode.JOIN );
select.add(Restrictions.like("nome", "Engenharia de Computacao"));
select.add(Restrictions.like("curso.disciplinas.periodo", "N"));
Mas é retornada a seguinte exceção:
Exception in thread "main" org.hibernate.QueryException: could not resolve property: curso of: tutorial.Curso
Alguém sabe como resolver isso ?
Pode ser também usando a Query em vez da Criteria, o importante é que eu consiga "filtrar" por um atributo de outra classe.
Muito obrigado
Marcos
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 10:07:16
|
zepunk
JavaTeenager
![[Avatar]](/images/avatar/c5c3d4fe6b2cc463c7d7ecba17cc9de7.jpg)
Membro desde: 24/05/2005 11:57:28
Mensagens: 198
Localização: Osasco
Offline
|
Você irá precisar utilizar um Alias.
Isto deve funcionar. Contanto que seu mapeamento esteja correto.
Abraços..
|
Perseverança sozinha não ganha guerra, só palavras não conquistam um coração. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 12:31:51
|
MARCOSTEIXEIRA
Thread.start()
Membro desde: 22/02/2007 09:29:31
Mensagens: 28
Offline
|
Oi zepunk,
Obrigado pela resposta.
O uso do alias funciona sim, não gerou nenhuma exceção, mas ainda retorna todas as disciplinas do curso.
Utilizei inclusive:
select.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
Mas só faz efeito para os objetos da classe Curso.
Estou utilizando o MySQL, será que é algo relacionado a ele ?
Vc sabe algum outro "esquema" ?
Valew !!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 04/05/2008 12:21:50
|
bbmany
JavaTeenager
![[Avatar]](/images/avatar/8523109c9a85dbfc46eb1f46955b5449.jpg)
Membro desde: 04/12/2007 17:23:24
Mensagens: 188
Offline
|
Estou com um problema parecedo
e fica dando o erro: eq(java.lang.String,java.lang.Object) in org.hibernate.criterion.Restriction cannot be appiled to (java.lang.String,nome)
Como resolver isto???
|
- Brena Monteiro -
Pós-graduanda em Engenharia de Software
Bacharel em Sistemas de Informação.
Tecnóloga em Análise e Desenvolvimento de Sistemas.
Analista e desenvolvedora de sistemas web.
monteirobrena.wordpress.com
Twitter |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 30/12/2009 11:22:32
|
KatsuBoy
Thread.start()
![[Avatar]](/images/avatar/e71c1e05a3214e4b3cfbd18e73a5dc0b.jpg)
Membro desde: 03/10/2009 13:11:02
Mensagens: 33
Localização: Itu - SP
Offline
|
Brothers, salvaram meu dia...
Estava estressadasso por causa de um problema usando Criteria...
e faltava essa p3$$# do Alias..
Vou disponibilizar meu código para o caso de ajudar alguém futuramente
|
* Fernando Katsukawa *
Desenvolvedor Java, php Drupal
Tecnólogo em Gestão da Tecnologia da Informação
FATEC ITU
www.katsukawa.com.br
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2010 12:24:05
|
Kleber-rr
Virtual Machine Man
![[Avatar]](/images/avatar/ba3ce9aeca1ef55d67282287b5a4b423.jpeg)
Membro desde: 02/07/2009 12:12:02
Mensagens: 664
Offline
|
Eae Pessoal, estou com um problema de criteria tb...
Estou com uma aplicação java, com hibernate, banco em postgresql, e pegando uma surra básica com criteria e combos alinhados...
o negócio é o seguinte: estou tentando fazer a seguinte criteria:
Esse método foi idéia de um colega aqui do GUJ que me ajudou a transformar uma query nessa linguagem acima...
a query era:
Só que me retorna esse erro:
Deve ser algum conflito entre do método com o Postgre, mas como eu sou iniciante em java e quase n tenho conhecimento com PostGre, ainda nao consegui descobrir o q é...
Se alguem puder ajudar, agradeço.
|
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2010 14:02:20
|
bbmany
JavaTeenager
![[Avatar]](/images/avatar/8523109c9a85dbfc46eb1f46955b5449.jpg)
Membro desde: 04/12/2007 17:23:24
Mensagens: 188
Offline
|
Qual o tipo do seu "id" no banco de dados?
Se puder coloque o SQL de criação da tabela serviço.
Até breve.
|
- Brena Monteiro -
Pós-graduanda em Engenharia de Software
Bacharel em Sistemas de Informação.
Tecnóloga em Análise e Desenvolvimento de Sistemas.
Analista e desenvolvedora de sistemas web.
monteirobrena.wordpress.com
Twitter |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2010 14:32:27
|
Kleber-rr
Virtual Machine Man
![[Avatar]](/images/avatar/ba3ce9aeca1ef55d67282287b5a4b423.jpeg)
Membro desde: 02/07/2009 12:12:02
Mensagens: 664
Offline
|
bbmany wrote:Qual o tipo do seu "id" no banco de dados?
Se puder coloque o SQL de criação da tabela serviço.
Até breve.
Graças a Deus uma abençoada pra me ajudar!!
segue a tabela:
Agradeço a ajuda.
|
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/01/2010 17:19:00
|
bbmany
JavaTeenager
![[Avatar]](/images/avatar/8523109c9a85dbfc46eb1f46955b5449.jpg)
Membro desde: 04/12/2007 17:23:24
Mensagens: 188
Offline
|
Kleber-rr
Acredito que o problema seja no cast
Tente desmembrar esta linha:
Isto é, tente pegar apenas um resultado, para ver o que a consulta vai retornar.
Aguardo.
|
- Brena Monteiro -
Pós-graduanda em Engenharia de Software
Bacharel em Sistemas de Informação.
Tecnóloga em Análise e Desenvolvimento de Sistemas.
Analista e desenvolvedora de sistemas web.
monteirobrena.wordpress.com
Twitter |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/01/2010 10:57:58
|
Kleber-rr
Virtual Machine Man
![[Avatar]](/images/avatar/ba3ce9aeca1ef55d67282287b5a4b423.jpeg)
Membro desde: 02/07/2009 12:12:02
Mensagens: 664
Offline
|
bbmany wrote:Kleber-rr
Acredito que o problema seja no cast
Tente desmembrar esta linha:
Isto é, tente pegar apenas um resultado, para ver o que a consulta vai retornar.
Aguardo.
bbmany, eu resolvi com ajuda de um colega do guj em outro tópico, o problema era o like. Tinha q ser o eq no lugar.
Valeu a ajuda!!!
|
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/01/2010 11:00:02
|
bbmany
JavaTeenager
![[Avatar]](/images/avatar/8523109c9a85dbfc46eb1f46955b5449.jpg)
Membro desde: 04/12/2007 17:23:24
Mensagens: 188
Offline
|
Que bom que resolveu!
Lembre-se de acrescentar [Resolvido] ao título do tópico.
Até breve.
|
- Brena Monteiro -
Pós-graduanda em Engenharia de Software
Bacharel em Sistemas de Informação.
Tecnóloga em Análise e Desenvolvimento de Sistemas.
Analista e desenvolvedora de sistemas web.
monteirobrena.wordpress.com
Twitter |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/01/2010 12:02:56
|
Kleber-rr
Virtual Machine Man
![[Avatar]](/images/avatar/ba3ce9aeca1ef55d67282287b5a4b423.jpeg)
Membro desde: 02/07/2009 12:12:02
Mensagens: 664
Offline
|
bbmany wrote:Que bom que resolveu!
Lembre-se de acrescentar [Resolvido] ao título do tópico.
Até breve.
Como eu posso alterar o título do tópico??
|
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/01/2010 12:08:44
|
Kleber-rr
Virtual Machine Man
![[Avatar]](/images/avatar/ba3ce9aeca1ef55d67282287b5a4b423.jpeg)
Membro desde: 02/07/2009 12:12:02
Mensagens: 664
Offline
|
ops, eu naum posso mudar o título pq o tópico naum é meu!!! huahuahauha
|
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/01/2010 13:48:04
|
bbmany
JavaTeenager
![[Avatar]](/images/avatar/8523109c9a85dbfc46eb1f46955b5449.jpg)
Membro desde: 04/12/2007 17:23:24
Mensagens: 188
Offline
|
É verdade... desculpe
|
- Brena Monteiro -
Pós-graduanda em Engenharia de Software
Bacharel em Sistemas de Informação.
Tecnóloga em Análise e Desenvolvimento de Sistemas.
Analista e desenvolvedora de sistemas web.
monteirobrena.wordpress.com
Twitter |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 19/01/2010 13:56:08
|
Kleber-rr
Virtual Machine Man
![[Avatar]](/images/avatar/ba3ce9aeca1ef55d67282287b5a4b423.jpeg)
Membro desde: 02/07/2009 12:12:02
Mensagens: 664
Offline
|
bbmany wrote:É verdade... desculpe
Q isso, tranquilo
|
 |
|
|
 |
|
|