JPA isMember

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:

Pelo amor de Deus me ajudem…

;,(