Galera, estou com dificuldade para persistir uns valores de tabelas relacionadas.
Preciso pegar os valores digitados na tela e salvar no banco, tenho duas tabelas (Cliente e Veiculo) mapeadas pelo Hibernate.
Entretanto quando persisto os valores no banco, ele só esta salvando os valores relacionados a tabela Cliente, porem o vinculo relacionado é preenchido normalmente no banco, so que sem as informacoes pertinentes ao veiculo.
(Cliente)
@OneToMany(mappedBy = "cliente", cascade = CascadeType.ALL)
public List<Veiculo> getVeiculo() {
return veiculo;
}
public void setVeiculo(List<Veiculo> veiculo) {
this.veiculo = veiculo;
}
(Veiculo)
@ManyToOne
public Cliente getCliente() {
return cliente;
}
public void setCliente(Cliente cliente) {
this.cliente = cliente;
}
Na minha tela eu pego os valores.
//pego os valores digitados na tela
String tipo = String.valueOf(fildTipo.getSelectedItem());
String cpf = fildCpf.getText();.....
//envio pelo contrutor criado na classe model
Cliente client = new Cliente(tipoPessoa.PESSOA_FISICA, cpf, rg, rgOrgao, rgUf,
dataExpedicao, nome, cnh, municiopio, uf);
String placa = fildPlacaUf.getText();
String modelo = fildModeloCarro.getText();.....
Veiculo veic = new Veiculo(placa, placa, dataCadastro, renvam, chassi, client);
//chama o metodo de salvar
ClienteController cli = new ClienteController();
cli.salvarCliente(client);
Aqui minha classe controller, com meu metodo de salvar
public void salvarCliente(Cliente cliente) {
SessionFactory sf = HibernateUtil.getSessionFactory();
Session session = sf.openSession();
Transaction trx = session.beginTransaction();
//instancio a classe de cliente e digo que esse veiculo tem um cliente
Veiculo veiculo = new Veiculo();
veiculo.setCliente(cliente);
//agora digo que esse cliente tem um veiculo ou uma lista desse.
cliente.getVeiculo().add(veiculo);
session.persist(cliente);
JOptionPane.showMessageDialog(null, "Dados foi salvo com sucesso");
trx.commit();
session.flush();
session.close();
}
Uma vez os dados salvos, verifico a tabela cliente e tenho isso.
e na tabela veiculo que deveria ter as informações do carro, tenho apenas o vinculo da tabela cliente, porem sem os dados.

Poderiam me ajudar?? Se precisarem de alguma informação é só falar.
att;
