Estou usando EJB 2.1 e estou com o seguinte problema:
Tenho um relacionamento 1:n entre Pessoa e LotacaoEquipe ( uma pessoa possui várias lotações e uma lotação é de apenas uma pessoa).
O relacionamento entre as entidades foi mapeado e quando realizo um pesquisa de uma pessoa, todas as lotações cadastradas para a pessoa são retornadas.
O meu problema é que eu preciso retornar apenas as lotações para a pessoa cujo atributo dataBaixa é nulo.
Alguém sabe como consigo fazer isso.
Abaixo snipets do meu arquivo ejb-jar.xml
PessoaEB PessoaBean br.cst.engenharia.gpise.ejb.entity.PessoaLocalHome br.cst.engenharia.gpise.ejb.entity.PessoaLocal br.cst.engenharia.gpise.ejb.entity.PessoaBean Container java.lang.Integer false Pessoa codigo nome codigo findAll SELECT OBJECT(o) FROM Pessoa o<entity>
<display-name>LotacaoEquipeEB</display-name>
<ejb-name>LotacaoEquipeBean</ejb-name>
<local-home>br.cst.engenharia.gpise.ejb.entity.LotacaoEquipeLocalHome</local-home>
<local>br.cst.engenharia.gpise.ejb.entity.LotacaoEquipeLocal</local>
<ejb-class>br.cst.engenharia.gpise.ejb.entity.LotacaoEquipeBean</ejb-class>
<persistence-type>Container</persistence-type>
<prim-key-class>java.lang.Integer</prim-key-class>
<reentrant>false</reentrant>
<abstract-schema-name>LotacaoEquipe</abstract-schema-name>
<cmp-field>
<description/>
<field-name>codigo</field-name>
</cmp-field>
<cmp-field>
<description/>
<field-name>dataInclusao</field-name>
</cmp-field>
<cmp-field>
<description/>
<field-name>dataBaixa</field-name>
</cmp-field>
<primkey-field>codigo</primkey-field>
<query>
<query-method>
<method-name>findAll</method-name>
<method-params/>
</query-method>
<ejb-ql>SELECT OBJECT(o)FROM LotacaoEquipe o WHERE o.dataBaixa IS NULL</ejb-ql>
</query>
</entity>
Pessoa-LotacaoEquipe
Pessoa-pertence-a-muitas-LotacaoEquipe
One
PessoaBean
lotacoes
LotacaoEquipe-possui-Pessoa
Many
LotacaoEquipeBean
pessoa
Juliana