Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Solucionado (ver solução)

Jpa identifica um novo Objeto com o mesmo id?

        <h:outputLabel value="Autores" />
        <h:selectManyListbox value="#{adminLivrosBean.autoresId}"
            converter="javax.faces.Integer">
            <f:selectItems value="#{adminLivrosBean.autores}"
                var="autor"
                itemLabel="#{autor.nome}"
                itemValue="#{autor.id}" />
        </h:selectManyListbox>
    @Transactional
    public void gravar() {

        for (Integer autorId : autoresId) {
            livro.getAutores().add(new Autor(autorId));
        }

        livroDao.gravarNoBanco(livro);
        this.livro = new Livro();
    }

minha dúvida é que o professor criou um novo autor com o mesmo id do autor no banco de dados, isso não iria conflitar com o autor ja existente no BD?

1 resposta
solução

Se o id for informado o JPA entende que é para fazer um update ao invés de um INSERT.