Quantcast
Channel: GUJ - Tópicos com a tag hibernate
Viewing all articles
Browse latest Browse all 759

Rollback ao persistir entidade com hibernate

$
0
0

@PhilAbreu escreveu:

Tenho uma entidade Produto:

@Entity
@Table(name = "produto")
public class Produto implements Serializable {

   private static final long serialVersionUID = 1L;
   private Long id;
   private Cliente cliente;
   private String nome;
   private BigDecimal valor;
       //getter e setter com anotacoes
}

e uma entidade Cliente:

@Entity
@Table(name = "cliente")
public class Cliente implements Serializable {

    private static final long serialVersionUID = -195972743343153998L;

    private Long id;

    private String nome;

    private String endereco;
    //getter e setter com anotacoes

}

e no bean faço:

@ManagedBean 
@ViewScoped
public class CadastroProdutosBean implements Serializable {

private static final long serialVersionUID = 1L;
private Produto produto = new Produto();
private Cliente cliente = new Cliente( );
private List<Cliente> clientes;
//metodo init

//nesse metodo recupero uma lista de cliente pra popular uma combo
public void prepararCadastro() {

	EntityManager manager = JpaUtil.getEntityManager();

	try {
		ClientesRepository clientesRepository = new ClientesRepository(manager);
		this.clientes = clientesRepository.listarTodos();

	} finally {
		manager.close();
	}
}

//aqui de fato faço a persistencia
public void salvar() {

	EntityManager manager = JpaUtil.getEntityManager();
	EntityTransaction transaction = manager.getTransaction();

	FacesContext context = FacesContext.getCurrentInstance();

	try {

		transaction.begin();

		CadastroProdutos cadastroProdutos = new CadastroProdutos(new ProdutosRepository(manager));
		cadastroProdutos.salvar(this.produto);

		CadastroClientes cadastroClientes = new CadastroClientes(new ClientesRepository(manager));
		//aqui cai na exception
		cadastroClientes.salvar(this.cliente);

		this.produto = new Produto();
		this.cliente = new Cliente();

		context.addMessage(null, new FacesMessage("Venda cadastrada com sucesso."));

		transaction.commit();

	} catch (Exception e) {

		transaction.rollback();

		FacesMessage mensagem = new FacesMessage(e.getMessage());
		mensagem.setSeverity(FacesMessage.SEVERITY_ERROR);

		context.addMessage(null, mensagem);
	} finally {
		manager.close();
	}
}

entao no cadastroClientes.salvar da rollback na transação com o erro:

org.hibernate.PropertyValueException: not-null property references a null or transient value : com.br.modelos.Cliente.nome

Quando tento salvar somente o produto, salva normalmente os dados do produto inclusive o cliente_id, mas preciso salvar tambem os dados na tabela de cliente. Onde estou errando?

Mensagens: 4

Participantes: 2

Ler tópico completo


Viewing all articles
Browse latest Browse all 759

Trending Articles


Girasoles para colorear


mayabang Quotes, Torpe Quotes, tanga Quotes


Tagalog Quotes About Crush – Tagalog Love Quotes


OFW quotes : Pinoy Tagalog Quotes


Long Distance Relationship Tagalog Love Quotes


Tagalog Quotes To Move on and More Love Love Love Quotes


5 Tagalog Relationship Rules


Best Crush Tagalog Quotes And Sayings 2017


Re:Mutton Pies (lleechef)


FORECLOSURE OF REAL ESTATE MORTGAGE


Sapos para colorear


tagalog love Quotes – Tiwala Quotes


Break up Quotes Tagalog Love Quote – Broken Hearted Quotes Tagalog


Patama Quotes : Tagalog Inspirational Quotes


Pamatay na Banat and Mga Patama Love Quotes


Tagalog Long Distance Relationship Love Quotes


BARKADA TAGALOG QUOTES


“BAHAY KUBO HUGOT”


Vimeo 10.7.0 by Vimeo.com, Inc.


Vimeo 10.7.1 by Vimeo.com, Inc.



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>