Join com filtros JPA

Boa noite galera, hoje la no serviço surgiu uma duvida, que é o seguinte, vou tentar explicar, não vou postar os códigos pois ficam na empresa e estou em casa agora. Mas basicamente vou explicar a situação e ver se tem ou não jeito de fazer com jpa.

Tenho uma tabela Conveniado, e uma tabela Venda. Na tabela Venda temos o codigo do conveniado. A relação seria a seguinte: cada Venda é feita por um conveniado, e um conveniado fez varias vendas.

Então mapeamos as tabelas da seguinte forma, na Venda tem um Conveniado e no Conveniado tem uma lista de Vendas. OK?

A minha pergunta é a seguinte: Tem como eu fazer um select em Conveniado, mas no atributo Vendas que é um List trazer somente Vendas que eu determinar por algum filtro?

Tipo assim, em vez de trazer todas as vendas do Conveniado, trazer somente algumas, por exemplo as que tiverem valor superior a 500.

Mas lembrando que estou fazendo select em Conveniado, e não em Venda. E quero filtrar as Vendas dentro do Conveniado.

Será que alguem entendeu?, rsrsrsrsrsr

Obrigado.

Cara no hibernate 3 vc poderia usar a cláusula with, segundo esse post do stackoverflow isso não funcionaainda no JPA2,mas ele dá uma solução com critéria ,mas isso ainda não testei, em todo caso vou passar o link depois posta ai pra nois se deu certo.

Sim,é possível.

ex: “SELECT conveniado FROM Conveniado conveniado JOIN FETCH conveniado.vendas vendas WHERE conveniado.id = :idConveniado AND vendas.tipoPagamento = :tipoPagamentoFiltro”

Utilizei a implementação do JBoss 4.2 GA para o JPA1.2 pra testar,não precisa do hibernate.

abraço