Olá!!
O meu mapeamento está assim:
public class Time implements Serializable {
private static final long serialVersionUID = 1L;
@Id @GeneratedValue (strategy=GenerationType.AUTO)
@Column(name = "id", nullable = false)
private Integer id;
@Column(name = "nome")
private String nome;
@OneToMany(mappedBy="time", cascade=CascadeType.ALL, fetch=FetchType.LAZY)
private List<Jogador> listaJogador;
//construtor padrão
//getters e setters
// hashcode e equals
}
@Entity
@Table(name = "Jogador")
public class Jogador implements Serializable {
private static final long serialVersionUID = 1L;
@Id @GeneratedValue (strategy=GenerationType.AUTO)
@Column(name = "id", nullable = false)
private Integer id;
@Column(name = "nome")
private String nome;
@ManyToOne(cascade=CascadeType.ALL, fetch=FetchType.LAZY)
@JoinColumn(name="idTime")
private Time time;
//construtor padrão
//getters e setters
// hashcode e equals
Eu coloco a lista de Jogadores na classe Time e após tentar inserir o time com a lista de jogadores, o hibernate não está setando o id do time na chave estrangeira que está na tabela jogador, o campo fica nulo.
O que eu devo fazer para a chave estrangeira receber o id do time?!!!
valeu!!!
Solução:
além de setar a listade jogadores no time, em cada jogador eu setei o time, aí deu certo!
se alguém tiver algum solução melhorzinha, por favor avisa aí!!! Achei meio gambiarra isso!!