Olá Boa tarde, baseado no curso de JavaEE eu decidi criar um projeto utilizando tudo que foi aprendido, porém , eu configurei o stadalone-full.xml, o persistence.xml e quando eu vou salvar a Entidade ele me joga essa Exception default task-6) java.lang.IllegalArgumentException: Unknown entity: org.jboss.as.jpa.container.TransactionScopedEntityManager
Segue o Código da Entidade
package br.com.app.loja.models;
import java.io.Serializable;
import java.math.BigDecimal;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToOne;
@Entity
public class Produto implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer id;
private String nome;
private BigDecimal peso;
private String descricao;
@OneToOne
private TipoMaterial tipoMaterial;
private BigDecimal valor;
private String capaPath;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public BigDecimal getPeso() {
return peso;
}
public void setPeso(BigDecimal peso) {
this.peso = peso;
}
public String getDescricao() {
return descricao;
}
public void setDescricao(String descricao) {
this.descricao = descricao;
}
public BigDecimal getValor() {
return valor;
}
public void setValor(BigDecimal valor) {
this.valor = valor;
}
public String getCapaPath() {
return capaPath;
}
public void setCapaPath(String capaPath) {
this.capaPath = capaPath;
}
@Override
public int hashCode() {
final int prime = 31;
int result = 1;
result = prime * result + ((id == null) ? 0 : id.hashCode());
return result;
}
@Override
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
Produto other = (Produto) obj;
if (id == null) {
if (other.id != null)
return false;
} else if (!id.equals(other.id))
return false;
return true;
}
public TipoMaterial getTipoMaterial() {
return tipoMaterial;
}
public void setTipoMaterial(TipoMaterial tipoMaterial) {
this.tipoMaterial = tipoMaterial;
}
}
o DAO
package br.com.app.loja.daos;
import java.io.Serializable;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import br.com.app.loja.models.Produto;
public class ProdutoDAO implements Serializable {
private static final long serialVersionUID = 1L;
@PersistenceContext
private EntityManager manager;
public void salvar(Produto produto) {
this.manager.merge(manager);
}
public List<Produto> buscaTodos() {
return this.manager
.createQuery("select p from Produto p", Produto.class)
.getResultList();
}
public Produto buscaPorId(Integer id) {
return this.manager.find(Produto.class, id);
}
}
O Bean ou Controller O ModelView é um Esteriotipo do CDI
@ModelView
public class AdminProdutoBean implements Serializable {
private static final long serialVersionUID = 1L;
@Inject
private JSFUtil jsfUtil;
@Inject
private Produto produto;
@Inject
private ProdutoDAO produtoDAO;
@Inject
private TipoMaterialDAO tipoMaterialDAO;
@Transactional
public void salvar() {
try {
produtoDAO.salvar(produto);
}catch(Exception e) {
System.out.println(e);
jsfUtil.addErrorMessage("Não foi possivel salvar o produto");
}
}
public List<TipoMaterial> getTiposMaterial() {
return tipoMaterialDAO.buscaTodos();
}
public void setProduto(Produto produto) {
this.produto = produto;
}
public Produto getProduto() {
return produto;
}
}