Problema Criteria com Lista de Enum

Boa Noite, estou com 1 problema tenso, tipo uma classe membro e um enum Cargo.
E na minha classe Membro tenho uma Lista de Cargos.

public class Membro{

@ElementCollection(targetClass = Cargo.class)  
	@CollectionTable(name = "r_soc_membro_cargo", joinColumns = @JoinColumn(name = "societario_membro_id")) 
	@IndexColumn(name = "index_col")
	@Column(name = "cargo_id") 
	List<Cargo> cargos = new ArrayList<Cargo>();

}

Estou precisando fazer uma busca pra encontrar os membros que tenham um certo cargo. dentro dessa lista. mas n ta rolando…

Fiz assim mas n rola… ele fala que nenhum valor foi passado para o parametro 1.


if(cargo != null){
			criteria.createAlias("cargos", "cargos", CriteriaSpecification.LEFT_JOIN);
			criteria.add(Restrictions.in("cargos", cargo);
		}

Se alguem puder me ajudar muito Obrigado…

Olá @colored

Tenta anotar como @Enumerated(EnumType.STRING)

Entao Mano, A key da Enum é Integer, ai. Pelo que andei vendo caso nao coloque @Enumeration o default é EnumType.Ordinal

ele até ta salvando no banco diretinho como eu queria…

O problema mesmo é p montar a query em cima dessa lista;