Usando filtros com JPA

0 respostas
jeancz

Estou tentando utilizar Filter no JPA mas não está dando muito certo alguém pode me ajudar?

Estou fazendo da seguinte maneira:

  1. Defini o filtro na classe PessoaCC
@Entity
@Table(name="pessoa")
@FilterDef(name="empresaFilter", parameters=@ParamDef(name="empresaParam", type="integer"))
@Filter(name="empresaFilter", condition="empresa.id=:empresaParam")
public class PessoaCC extends Pessoa {
..
}
  1. Ativei o filtro no meu EntityManager
public Collection list(Class clazz, Collection<Criterion> criterion, Usuario usuario){
		Session sm = (Session) em.getDelegate();
		Filter filter = sm.enableFilter("empresaFilter");
		filter.setParameter("empresaParam", 1);
				
		Criteria critera = sm.createCriteria(clazz);

O problema que o filtro não é aplicado ao critéria. O que eu to fazendo de errado. Eu já utilizei assim, usando no hybernate sem JPA e funciona. Tem algum macete na configuração do JPA? Tô usando JTA no JBOSS.

Criado 6 de julho de 2010
Respostas 0
Participantes 1