Pessoal alguem pode me dizer o que estou fazendo de errado,ou o que falta fazer para que o seguinte codigo funcione:
minha classe produto:
package com.Lgweb.Tcc.Model;
import java.io.Serializable;
import java.math.BigInteger;
import java.util.Collection;
import java.util.Date;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.OneToMany;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import org.hibernate.annotations.FetchMode;
@Entity
@Table(name = "produto")
@SequenceGenerator(name = "geraCodProduto", sequenceName = "geraCodProduto")
public class Produto implements Serializable {
private static final long serialVersionUID = 1L;
@Id @GeneratedValue(strategy = GenerationType.AUTO, generator = "geraCodProduto")
@Column(name = "produtoid", nullable = false)
private Integer produtoid;
@Column(name = "modelo")
private String modelo;
@Column(name = "qtdtotal", nullable = false)
private BigInteger qtdtotal;
@Column(name = "valorcusto")
private Double valorcusto;
@Column(name = "valorvenda")
private Double valorvenda;
@Column(name = "situacao")
private String situacao;
@Column(name = "datacadastro")
@Temporal(TemporalType.DATE)
private Date datacadastro= new Date();
@Column(name = "linha")
private String linha;
@OneToMany(cascade = CascadeType.PERSIST, mappedBy = "produto")
private Collection<Itensvenda> itensvendaCollection;
@OneToMany(cascade = CascadeType.PERSIST, mappedBy = "produto")
private Collection<Itenscompra> itenscompraCollection;
@OneToMany(cascade = CascadeType.PERSIST, mappedBy = "produto")
@org.hibernate.annotations.Fetch(FetchMode.SUBSELECT)
private Collection<ProdutoNumeracao> produtoNumeracaoCollection;
O metodo salvar no controlador
public String create() {
IDaoProduto ldao = new DaoProduto();
produtoNumeracao.setProduto(produto);
ldao.salvar(produto);
setProdutoNumeracaoEditando(false);
getTodos();
return "sucesso_incProduto";
}
o metodo salvar no dao:
public void salvar(Produto produto) {
session = HibernateUtil.getInstance();
Transaction tx = null;
try {
tx = session.beginTransaction();
System.out.println("Modelo do Produto NO DAO...:"+produto.getModelo());
session.saveOrUpdate(produto);
tx.commit();
} catch (HibernateException e) {
tx.rollback();
} finally {
session.close();
}
}
no log do servidor mostra que ele executou o gerador de codigo,no caso uma sequence do postgresql,mas nao salva nem com bomba no banco,alguem pode me ajudar por favor?
09:12:40,187 INFO [STDOUT] o produto em create u
09:12:40,203 INFO [STDOUT] Modelo do Produto NO DAO...:TESTE DE HJ
09:12:40,203 INFO [STDOUT] Hibernate: select nextval ('geraCodProduto')
09:12:40,296 INFO [STDOUT] Hibernate: select produto0_.produtoid as produtoid16_, produto0_.modelo as modelo16_, produto0_.qtdtotal as qtdtotal16_, produto0_.valorcusto as valorcusto16_, produto0_.valorvenda as valorvenda16_, produto0_.situacao as situacao16_, produto0_.datacadastro as datacada7_16_, produto0_.linha as linha16_ from produto produto0_ order by produto0_.modelo
09:12:40,312 INFO [STDOUT] entrando em modo setFocus().........
Estou utilizando JSF 1.2,obrigado,qualquer ajuda e dica é de grande valor para mim.
Obrigado,abraços.