Olá,
Nas minhas classes modelosAutor,     LivroDataModel e Usuario 
(essa útima eu fiz para criar uma tela de cadastro) deu erro. Devo fazer o mesmo que eu fiz nas outras classes (beans e daos)?
Segue a classe Autor:
package br.com.caelum.livraria.modelo;
import java.io.Serializable;
import javax.faces.bean.ViewScoped;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import br.com.caelum.livraria.dao.DAO;
@Entity
@ViewScoped
public class Autor implements Serializable {
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue
    private Integer id;
    private String nome;
    private String email;
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public String getNome() {
        return nome;
    }
    public void setNome(String nome) {
        this.nome = nome;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public void remover(Autor autor) {
        new DAO<Autor>(Autor.class).remove(autor);  //aqui onde da o erro!
    }
}
Segue a classe LivroDataModelo :
package br.com.caelum.livraria.modelo;
import java.util.List;
import java.util.Map;
import org.primefaces.model.LazyDataModel;
import org.primefaces.model.SortOrder;
import br.com.caelum.livraria.dao.DAO;
public class LivroDataModel extends LazyDataModel<Livro>{
    DAO<Livro> dao = new DAO<Livro>(Livro.class);
    public LivroDataModel() {
        super.setRowCount(dao.quantidadeDeElementos());
    }
    @Override
    public List<Livro> load(int inicio, int quantidade, String campoOrdenacao, SortOrder sentidoOrdenacao, Map<String, Object> filtros) {
        String titulo = (String) filtros.get("titulo");
        return dao.listaTodosPaginada(inicio, quantidade, "titulo", titulo);
    }
}
Segue a classe Usuário:
package br.com.caelum.livraria.modelo;
import java.io.Serializable;
import javax.faces.bean.ViewScoped;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import br.com.caelum.livraria.dao.DAO;
@Entity
@ViewScoped
public class Usuario implements Serializable {
    /**
     * 
     */
    private static final long serialVersionUID = 1L;
    @Id
    @GeneratedValue
    private Integer id;
    private String nome;
    private String senha;
    private String email;
    public String getNome() {
        return nome;
    }
    public void setNome(String nome) {
        this.nome = nome;
    }
    public String getSenha() {
        return senha;
    }
    public void setSenha(String senha) {
        this.senha = senha;
    }
    public String getEmail() {
        return email;
    }
    public void setEmail(String email) {
        this.email = email;
    }
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public void remover(Usuario autor) {
        new DAO<Usuario>(Usuario.class).remove(autor);
    }
}
Help?