JPA isMember

1 resposta
brunohansen

Não consigo criar uma consulta com a criteria isMember. Alguém poderia me ajudar?

Tenho o seguinte atributo na minha classe:

...

	@ManyToMany
	@JoinTable(name="acomp_visibilidade",
			joinColumns = {@JoinColumn(name="idacomp")},
			inverseJoinColumns = {@JoinColumn(name="idcentro")})
	private List<Centro> visibilidades;

...

Quero consultar quais acomp um determinado centro tem visibilidade, ou seja, quero consultar possui um determinado centro dentro da list visibilidades.

Essa é minha consulta:

...

getCriteriaBuilder().isMember(new Centro(111), (Expression)  getCriteriaQuery.from(Acomp.class).<List<Centro>>get("visibilidades").);

...

O sql gerado é:

...

 ? in (
                select
                    acompanham1_.idacomp 
                from
                    acomp acompanham1_
            )

...

Este from acomp esta muito estranho não deveria ser algo com acomp_visibilidade pelo fato de eu ter anotado @JoinTable(name=“acomp_visibilidade”

Espero que alguém consiga me ajudar :roll:

1 Resposta

brunohansen

Pelo amor de Deus me ajudem…

;,(

Criado 24 de maio de 2011
Ultima resposta 24 de mai. de 2011
Respostas 1
Participantes 1