Spring jpa

Como fazer uma query passando uma coleção como parâmetro? Ex:

public interface UsuarioRepository extends JpaRepository<Usuario, Long> {
	
	@Query(Value="select u from Usuario u  join u.grupos g   where u.nome like :nome and  u.grupos in (:grupos)")
	public List<Usuario> findByNomeContainingAndInGruposIn(String nome, List<Grupo> grupos);
}

Classe de serviço

public List<Usuario> filtrar(UsuarioFilter filtro) {
	String email = filtro.getEmail() == null ? "%" : filtro.getEmail();
	return usuarioRepository.findByNomeContainingAndEmailContaining(nome, filtro.getGrupos());
}

O que há de errado? Será que só com criteria?

Acredito que você teria que passar uma coleção com tipagem!

Exemplo:

@Query(value = "SELECT u FROM User u WHERE u.name IN :names")
List<User> findUserByNameList(@Param("names") Collection<String> names);

Qualquer coisa, dá uma olhada neste link abaixo:

Qual erro está acontecendo?

Muito obrigado funcionou . Porem como classe nao funciona. Somente passando uma lista de codigos. queria entender o porque.

[codigo]
@Query(“select distinct u from Usuario u JOIN u.grupos g Where (u.nome like :nome) and (g.codigo in :grupos)”)
public List findByNomeContainingAndGruposIn(@Param(“nome”)String nome, @Param(“grupos”) List grupos)
[/codigo]

mas muito obrigado.

boa noite, lucastody.

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘usuariosController’: Unsatisfied dependency expressed through field ‘cadastroUsuarioService’; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘cadastroUsuarioService’: Unsatisfied dependency expressed through field ‘usuarioRepository’; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘usuarioRepository’: Invocation of init method failed; nested exception is java.lang.IllegalArgumentException: Validation failed for query for method public abstract java.util.List br.com.sysaluguel.repository.UsuarioRepository.findByNomeContainingInGrupos(java.lang.String,java.util.List)!

ele nao consegue fazer a injecao de dependencia. no controller por causa deste metodo. eu nao consigo entender, mas quando coloco List ao inves de List funciona.

Obrigado pela ajuda.