Como faço um relacionamento bidirecional entre entidades @ManytoMany? Para montar o JPQL abaixo, acho que esse relacionamento deve existir:
Categoria viagem = ...
Query query = em.createQuery("select m from Movimentacao m join m.categoria c where c = :pCategoria and m.valor > 500 and m.tipoMovimentacao = :pTipoMovimentacao");
query.setParameter(":pCategoria", viagem);
query.setParameter(":pTipoMovimentacao", TipoMovimentacao.SAIDA);