Setar entidade JSF

Olá pessoal,

seguinte…

Tenho a classe PessoaFisica:

[code]@Entity
@Table(name=“pessoa_fisica”)
public class PessoaFisica implements Serializable{

@Id  
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="PESSOA_FISICA_ID")
private Long id;  

@OneToOne(cascade = CascadeType.ALL)  
@JoinColumn(name="USER_ID")
private UserLogin userLogin = new UserLogin();

...

}[/code]E a classe:

[code]@Entity
@Table(name=“user_login”)
public class UserLogin implements Serializable {

@Id  
@GeneratedValue(strategy=GenerationType.IDENTITY)
@Column(name="USER_ID")
private Long id;  

@Column(name="LOGIN_EMAIL", nullable=false)
private String loginEmail; 

@Column(name="PASSWORD", nullable=false)
private String password;

@OneToOne(cascade=CascadeType.ALL)
@JoinColumn(name="ID_USR_PES_FIS")	
private PessoaFisica pessoaFisica;

...

}[/code]Pra salvar uma PessoaFisica no banco eu faria:

[code]PessoaFisica pessoaFisica = new PessoaFisica();
pessoaFisica.setNome("Maurão da Silva");

UserLogin user = new UserLogin();
user.setLoginEmail("maurao@gmail.com");
user.setPassword("123456");
user.setPessoaFisica(pessoaFisica);
	
pessoaFisica.setUser(user);

    ...

session.save(pessoaFisica);
tx.commit();

session.close();
sf.close();[/code]Até aqui tudo bem. Eu não estou conseguindo salvar direito usando JSF. Quando eu salvo usando este teste que postei, funciona. A tabela [b]user_login[/b] é preenchida corretamente. Mas quando eu salvo usando o código: 

<h:outputLabel for="email" value="* E-mail " styleClass="rotulos"/> <h:inputText id="email" value="#{pessoaFisicaFace.pessoaFisica.userLogin.loginEmail}" styleClass="edit"> <f:validator validatorId="emailValidator"/> </h:inputText> a coluna ID_USR_PES_FIS da tabela user_login recebe NULL. Acredito que falte o código pessoaFisica.setUser(user); em JSF.
Alguém pode ajudar?

Pelo que eu entendi esta faltando o relacionamente entre Pessoa Fisica e LoginUser.

Vc precisaria criar um SelectOnMenu na página onde o valor selelecionado seria o valor correspondente a PessoaFisica ou ao LoginUser…

na página do LoginUser precisa de um SelectOneMenu de PessoaFisca e vice-versa…

[]'s

Oi Tati,

Você está inserindo ou alterando?

Oi,

estou inserindo.

Oi Tati,

deve estar dando algum erro ao inserir, pois de acordo com seu código você está preenchendo o loginEmail, porém o campo password não pode ser nulo e vc não esta preenchendo ele.

Posta as mensagens do console para dar uma olhada.

Abraços,

Olá,

modelei de outro modo e deu certo!

Agradeço a todos que se preocuparam!

:wink: