Boa tarde, nessa ultima alteração na tabela de livros o botão de remover não esta atualizando a tabela de livros, isto acontece com mais alguém?
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!
Boa tarde, nessa ultima alteração na tabela de livros o botão de remover não esta atualizando a tabela de livros, isto acontece com mais alguém?
Olá Hedvelton, blz?
Poste seu código do bean e xhtml, para que eu possa tentar te ajudar.
Ele exclui o registro, porem não da refresh na tabela, se eu clicar no link no navegador para dar o refresh ai sim atualiza.......
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Novo Livro Livros Cadastro de Livrospackage br.com.caelum.livraria.bean;
import java.io.Serializable; import java.util.List;
import javax.faces.application.FacesMessage; import javax.faces.bean.ManagedBean; import javax.faces.bean.ViewScoped; import javax.faces.component.UIComponent; import javax.faces.context.FacesContext; import javax.faces.validator.ValidatorException;
import br.com.caelum.livraria.dao.DAO; import br.com.caelum.livraria.modelo.Autor; import br.com.caelum.livraria.modelo.Livro;
@ManagedBean @ViewScoped public class LivroBean implements Serializable {
private static final long serialVersionUID = 1L;
private Livro livro = new Livro(); private Integer autorId;
private List livros;
public void setAutorId(Integer autorId) { this.autorId = autorId; }
public Integer getAutorId() { return autorId; }
public Livro getLivro() { return livro; }
public List getLivros() { DAO dao = new DAO(Livro.class);
if (this.livros == null) { this.livros = dao.listaTodos(); }
return livros; }
public List getAutores() { return new DAO(Autor.class).listaTodos(); }
public List getAutoresDoLivro() { return this.livro.getAutores(); }
public void gravarAutor() { Autor autor = new DAO(Autor.class).buscaPorId(this.autorId); this.livro.adicionaAutor(autor); }
public void gravar() { System.out.println("Gravando livro " + this.livro.getTitulo());
if (livro.getAutores().isEmpty()) { // throw new RuntimeException("Livro deve ter pelo menos um // Autor."); FacesContext.getCurrentInstance().addMessage("autor", new FacesMessage("Livro deve ter pelo menos um Autor")); return; }
DAO dao = new DAO(Livro.class); if (this.livro.getId() == null) { dao.adiciona(this.livro); this.livros = dao.listaTodos(); } else { dao.atualiza(this.livro); }
this.livro = new Livro(); }
public void remover(Livro livro) { System.out.println("Removendo livro"); new DAO(Livro.class).remove(livro); }
public void removerAutorDoLivro(Autor autor) { this.livro.removerAutor(autor); }
public void carregar(Livro livro) { System.out.println("Carregando livro"); this.livro = livro; }
public String formAutor() { System.out.println("Chamanda o formulario do Autor"); return "autor?faces-redirect=true"; }
public void comecaComDigitoUm(FacesContext fc, UIComponent component, Object value) throws ValidatorException {
String valor = value.toString(); if (!valor.startsWith("1")) { throw new ValidatorException(new FacesMessage("Deveria começar com 1")); } } }