Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

2
respostas

Erro ao remover autor

Como implemento uma verificação se um livro está associado a um autor? Queria algo como isso:

    public void removerAutor(Autor autor) {
        if (getAutores().contains(livro)) {
            FacesContext.getCurrentInstance().addMessage("autor",
                    new FacesMessage(autor.getNome() + " contem livros associados a ele!"));
        } else {
            this.autor.remover(autor);
        }
    }
2 respostas

Fiz uma gambiarra, sei que ta totalmente errado, mas ta funcionando.

public void removerAutor(Autor autor) {

        try {
            this.autor.remover(autor);
        } catch (Exception e) {
            FacesContext.getCurrentInstance().addMessage("autor",
                    new FacesMessage(autor.getNome() + " contem livros associados a ele!"));
            System.out.println("Tentando remover autor!");
        }

    }

Ainda aguardando respostas.

Opa, o livro tem uma coleção de autores? Você pode fazer algo como livro.getAutores().contains(autor). Só lembra que o autor deve ter um equals e talvez um hashcode :).