Fiz o codigo exatamente como mostra a aula e apresenta o seguinte erro:
Context Path:/casadocodigo Servlet Path:/livros/form.xhtml Path Info:null Query String:null Stack Trace javax.servlet.ServletException: /livros/form.xhtml @27,94 value="#{adminLivrosBean.autoresId}": The class 'br.com.casadocodigo.loja.beans.AdminLivrosBean$Proxy$_$$_WeldSubclass' does not have the property 'autoresId'. javax.faces.webapp.FacesServlet.service(FacesServlet.java:671) io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)
Codigo da Classe AdminLivrosBean
package br.com.casadocodigo.loja.beans;
import java.util.ArrayList; import java.util.List;
import javax.enterprise.context.RequestScoped; import javax.inject.Inject; import javax.inject.Named; import javax.transaction.Transactional;
import br.com.casadocodigo.loja.daos.AutorDao; import br.com.casadocodigo.loja.daos.LivroDao; import br.com.casadocodigo.loja.models.Autor; import br.com.casadocodigo.loja.models.Livro;
//CDI
@Named @RequestScoped public class AdminLivrosBean {
private Livro livro = new Livro();
@Inject private LivroDao dao;
@Inject private AutorDao autorDao;
private List autoresId = new ArrayList<>();
@Transactional public void salvar(){ for (Integer autorId : autoresId) { livro.getAutores().add(new Autor(autorId)); } dao.salvar(livro); System.out.println("Livro Cadastrado: " + livro);
}
public List getAutores() { return autorDao.listar(); } public Livro getLivro() { return livro; }
public void setLivro(Livro livro) { this.livro = livro; } }