Hibernate jpa 4.3 não salva em duas tabelas

21/02/2018

0

Ola, Pessoal

Estou com problema, estou tentado salvar em duas tabelas com Hibernate JPA e JSF sou novo em programação, onde fica o botao salva e a outra tabela fica todos os campos null nao sei o que pode estar acontecendo e ele salva em uma tabela apenas
Se alguém puder ajudar.

Obrigado

Segue o codigo

codigo HTML


<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:p="http://primefaces.org/ui"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core">
<h:head>

</h:head>
<h:body>
<h1 style="background-color:#00BFFF; color:#fff; text-align: center">CADASTRO ASSISTIDOS</h1>
<p:tabView dynamic="true" cache="true" effect="fold">
<p:tab title="Dados Cadastrais">
<h:form id="form1">
<p:messages id="messages" showDetail="true"/>

<h:panelGrid columns="1" cellpadding="3" style="margin-bottom:10px">

<h:outputLabel value="*Nome Completo: "/>
<p:inputText id="nome" value="#{mb.assistidos.nome}" requiredMessage="campo obrigatorio" label="nome" size="50"/>
<p:watermark for="nome" value="Entre com o nome"/>

<h:outputLabel value="*Nome da Mãe: "/>
<p:inputText id="nomeMae" value="#{mb.assistidos.nomeMae}" requiredMessage="campo obrigatorio" label="nomeMae" size="50"/>
<p:watermark for="nomeMae" value="Entre com o nome da Mãe"/>

<h:outputLabel value="*Email: "/>
<p:inputText id="email" value="#{mb.assistidos.email}" requiredMessage="campo obrigatorio" label="email" size="50" />
<p:watermark for="email" value="Entre com o email"/>

<p:outputLabel for="sexo" value="*Sexo:" />
<p:selectOneMenu id="sexo" value="#{mb.assistidos.sexo}" style="width:125px">
<f:selectItem itemLabel="Selecione" itemValue="" />
<f:selectItem itemLabel="Masculino" itemValue="Masculino" />
<f:selectItem itemLabel="Feminino" itemValue="Feminino" />
</p:selectOneMenu>

<h:outputLabel value="*CPF: "/>
<p:inputText id="documento" value="#{mb.assistidos.documento}" requiredMessage="campo obrigatorio" label="documento" size="40"/>
<p:watermark for="documento" value="Entre com o CPF"/>

<h:outputLabel value="Telefone Fixo: "/>
<p:inputText id="telefone1" value="#{mb.assistidos.telefone1}" label="telefone1" size="30"/>
<p:watermark for="telefone1" value="Entre com telefone fixo"/>

<h:outputLabel value="*Telefone Celular: "/>
<p:inputText id="telefone2" value="#{mb.assistidos.telefone2}" requiredMessage="campo obrigatorio" label="telefone2" size="30"/>
<p:watermark for="telefone2" value="Entre com o celular"/>

<p:outputLabel for="dataNascimento" value="Data Nascimento: "/>
<p:calendar id="dataNascimento" value="#{mb.assistidos.dataNascimento}" locale="br" navigator="true" pattern="dd/MM/yyyy"/>
<p:commandButton value="Gravar" id="gravar" update="@(form1)@(form2)@(form3)" actionListener="#{mb.gravar}" ajax="true" styleClass="ui-priority-primary" />
</h:panelGrid>
</h:form>
</p:tab>

<p:tab title="Endereco">

<h:form id="form2">
<p:messages id="messages" showDetail="true"/>
<h:panelGrid columns="3" cellpadding="10" style="margin-bottom:10px">

<h:outputLabel value="*Logradouro: "/>
<p:inputText id="logradouro" value="#{mb.endereco.logradouro}" label="logradouro" requiredMessage="campo obrigatorio" size="60"/>
<p:watermark for="logradouro" value="Entre com a rua"/>

<h:outputLabel value="*Numero: "/>
<p:inputText id="numero" value="#{mb.endereco.numero}" label="numero" requiredMessage="campo obrigatorio" size="20"/>
<p:watermark for="numero" value="Entre com o numero"/>

<h:outputLabel value="Complemento: "/>
<p:inputText id="complemento" value="#{mb.endereco.complemento}" label="complemento" size="30"/>
<p:watermark for="complemento" value="Entre com o complemento"/>

<h:outputLabel value="*Bairro: "/>
<p:inputText id="bairro" value="#{mb.endereco.bairro}" label="bairro" requiredMessage="campo obrigatorio" size="30"/>
<p:watermark for="bairro" value="Entre com o bairro"/>

<h:outputLabel value="*Cidade: "/>
<p:inputText id="cidade" value="#{mb.endereco.cidade}" label="cidade" requiredMessage="campo obrigatorio" size="40"/>
<p:watermark for="cidade" value="Entre com a cidade" />

<h:outputLabel value="*Estado: "/>
<p:inputText id="estado" value="#{mb.endereco.estado}" label="estado" requiredMessage="campo obrigatorio" size="10"/>
<p:watermark for="estado" value="Estado xx "/>

<h:outputLabel value="*CEP: "/>
<p:inputText id="cep" value="#{mb.endereco.cep}" label="cep" requiredMessage="campo obrigatorio" size="10"/>
<p:watermark for="cep" value="cep xxxxx-xxx"/>

</h:panelGrid>

<p:growl></p:growl>
</h:form>


</p:tab>
<p:tab title="Consulta">
<h:form id="form3">
<p:dataTable value="#{mb.dtoAssistidosEnderecos}" var="linha" rows="3" paginator="true">

<p:column headerText="idAssistidos " filterBy="#{linha.idAssistidos}"><h:outputText value="#{linha.idAssistidos}"/></p:column>

<p:column headerText="Nome: " filterBy="#{linha.nome}"><h:outputText value="#{linha.nome}"/></p:column>

<p:column headerText="Nome da Mãe: "><h:outputText value="#{linha.nomeMae}"/></p:column>

<p:column headerText="Email: "><h:outputText value="#{linha.email}"/></p:column>

<p:column headerText="Sexo: "><h:outputText value="#{linha.sexo}"/></p:column>

<p:column headerText="Documento: "><h:outputText value="#{linha.documento}"/></p:column>

<p:column headerText="Telefone Fixo: "><h:outputText value="#{linha.telefone1}"/></p:column>

<p:column headerText="Telefone Celular: "><h:outputText value="#{linha.telefone2}"/></p:column>

<p:column headerText="Data Nascimento: "><h:outputText value="#{linha.dataNascimento}"/></p:column>

<p:column headerText="Logradouro: "><h:outputText value="#{linha.logradouro}"/></p:column>

<p:column headerText="Numero: "><h:outputText value="#{linha.numero}"/></p:column>

<p:column headerText="Complemento: "><h:outputText value="#{linha.complemento}"/></p:column>

<p:column headerText="Bairro "><h:outputText value="#{linha.bairro}"/></p:column>

<p:column headerText="Cidade "><h:outputText value="#{linha.cidade}"/></p:column>

<p:column headerText="Estado "><h:outputText value="#{linha.estado}"/></p:column>

<p:column headerText="CEP "><h:outputText value="#{linha.cep}"/></p:column>

</p:dataTable>
</h:form>
</p:tab>
</p:tabView>

</h:body>
</html>



package persistence;

import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.Transaction;

import dto.DtoAssistidosEndereco;
import entity.Assistidos;
import entity.Endereco;

public class AssistidosDao {

Session session;
Transaction transaction;
Query query;

public void gravarDao(Assistidos a, Endereco e)throws Exception{

session=HibernateUtil.getSessionFactory().openSession();
transaction= sessi
Anderson Rodrigues

Anderson Rodrigues

Responder

Posts

21/02/2018

Anderson Rodrigues

Complementando com DAO e ManagerBean

package persistence;<br />
<br />
import java.util.List;<br />
<br />
import org.hibernate.Query;<br />
import org.hibernate.Session;<br />
import org.hibernate.Transaction;<br />
<br />
import dto.DtoAssistidosEndereco;<br />
import entity.Assistidos;<br />
import entity.Endereco;<br />
<br />
public class AssistidosDao {<br />
<br />
	Session session;<br />
	Transaction transaction;<br />
	Query query;<br />
	<br />
	public void gravarDao(Assistidos a, Endereco e)throws Exception{<br />
		<br />
		session=HibernateUtil.getSessionFactory().openSession();<br />
		transaction= session.getTransaction();<br />
		transaction.begin();<br />
		session.save(a);		<br />
		e.setAssistidos(a);<br />
		session.save(e);<br />
		transaction.commit();<br />
		session.close();<br />
			<br />
		}<br />
		<br />
	<br />
	<br />
	public void excluirDao(Assistidos a, Endereco e)throws Exception{<br />
		<br />
		session=HibernateUtil.getSessionFactory().openSession();<br />
		transaction=session.getTransaction();<br />
		transaction.begin();<br />
		session.delete(e);<br />
		e.setAssistidos(a);<br />
		transaction.commit();<br />
		if (session !=null) {<br />
			session.close();<br />
			<br />
		}<br />
	}<br />
	<br />
	public List<DtoAssistidosEndereco> findAll(){<br />
		<br />
		session=HibernateUtil.getSessionFactory().openSession();<br />
		Query query =session.createQuery("from Vfundacao");<br />
		List<DtoAssistidosEndereco> lst=query.list();<br />
		session.close();<br />
		return lst;<br />
	}<br />
}<br />
<br />
<br />
package manager;<br />
<br />
import java.util.List;<br />
<br />
import javax.faces.application.FacesMessage;<br />
import javax.faces.bean.ManagedBean;<br />
import javax.faces.bean.RequestScoped;<br />
import javax.faces.context.FacesContext;<br />
<br />
import dto.DtoAssistidosEndereco;<br />
import entity.Assistidos;<br />
import entity.Endereco;<br />
import persistence.AssistidosDao;<br />
<br />
@ManagedBean(name="mb")<br />
@RequestScoped<br />
public class ManagerBean {<br />
<br />
	private Assistidos assistidos;<br />
	private Endereco endereco;<br />
	private AssistidosDao dao;<br />
	private List<DtoAssistidosEndereco> dtoAssistidosEnderecos;<br />
	<br />
<br />
	public ManagerBean() {<br />
		dao = new AssistidosDao();<br />
		assistidos= new Assistidos();<br />
		endereco = new Endereco();<br />
	}<br />
<br />
	public Endereco getEndereco() {<br />
		return endereco;<br />
	}<br />
<br />
	public void setEndereco(Endereco endereco) {<br />
		this.endereco = endereco;<br />
	}<br />
<br />
	public Assistidos getAssistidos() {<br />
		return assistidos;<br />
	}<br />
<br />
	public void setAssistidos(Assistidos assistidos) {<br />
		this.assistidos = assistidos;<br />
	}<br />
<br />
	public AssistidosDao getDao() {<br />
		return dao;<br />
	}<br />
<br />
	public void setDao(AssistidosDao dao) {<br />
		this.dao = dao;<br />
	}<br />
	<br />
	public List<DtoAssistidosEndereco> getDtoAssistidosEnderecos() {<br />
		try {<br />
			if (dao == null) {<br />
				dao= new AssistidosDao();<br />
			}<br />
			dtoAssistidosEnderecos = new AssistidosDao().findAll();<br />
		} catch (Exception ex) {<br />
			ex.printStackTrace();<br />
		}<br />
		<br />
		return dtoAssistidosEnderecos;<br />
	<br />
	}<br />
<br />
	public void setDtoAssistidosEnderecos(List<DtoAssistidosEndereco> dtoAssistidosEnderecos) {<br />
		this.dtoAssistidosEnderecos = dtoAssistidosEnderecos;<br />
	}<br />
<br />
	public void gravar() {<br />
		FacesContext fc = FacesContext.getCurrentInstance();<br />
		try {<br />
			if (dao==null) {<br />
				dao = new AssistidosDao();<br />
			}<br />
			dao.gravarDao(assistidos, endereco);<br />
			fc.addMessage(null, new FacesMessage("Dados Gravados"));<br />
		} catch (Exception ex) {<br />
			fc.addMessage(null, new FacesMessage("Error"+ex.getMessage()));<br />
		}<br />
	}<br />
	<br />
	public void excluir() {<br />
		FacesContext fc = FacesContext.getCurrentInstance();<br />
		try {<br />
			if (dao==null) {<br />
				dao=new AssistidosDao();<br />
			}<br />
			dao.excluirDao(assistidos, endereco);<br />
			fc.addMessage(null, new FacesMessage("Dados Excluidos"));<br />
		} catch (Exception ex) {<br />
			fc.addMessage(null, new FacesMessage());<br />
		}<br />
	}<br />
	<br />
}<br />
Responder

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar