Pessoal, estou com alguns probleminha que estão me tirando o sono.
Tenho uma tabela TEAM e FLM. Na team eu tenho os campos TEAM e FLM no qual tento atualizar e só altera o team, já o FLM que vem de outra tabela nao da certo.
Não gera erro nenhum na console…
Meu banco está com update on casdade e como falei, as alterações funcionam desde q não seja relacionado com outra.
Alguma coisa faltando no código? Alguém poderia ajudar, por favor?
@Entity @Table(name=“team”) public class Team implements Serializable{@Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="id_team",nullable=false) private Integer idTeam; @Column(name="team",nullable=false) private String team; @OneToMany(fetch=FetchType.LAZY, targetEntity=Usuario.class,mappedBy="team") private Set usuarios = new HashSet(0); @ManyToOne(fetch=FetchType.LAZY) @JoinColumn(name="id_flm") private Flm flm;
Outra classe
@Entity @Table(name=“flm”) public class Flm implements Serializable{@Id @GeneratedValue(strategy=GenerationType.AUTO) @Column(name="id_flm",nullable=false) private Integer idFlm; @Column(name="name",nullable=false) private String name; @Column(name="username",nullable=false) private String username; @OneToMany(fetch=FetchType.LAZY, targetEntity=Usuario.class,mappedBy="flm") private Set usuarios = new HashSet(0); @OneToMany(fetch=FetchType.LAZY, targetEntity=Team.class,mappedBy="flm") private Set teams = new HashSet(0);
public void atualizar(Team team) {
Session session = HibernateUtil.getSessionFactory().openSession();
try {
session.beginTransaction();
session.merge(team);
session.beginTransaction().commit();
} catch (Exception e){
System.out.println("Erro ao inserir: "+e.getMessage());
session.beginTransaction().rollback();
} finally {
session.close();
}
}
atualizar do flm é igual, só muda o nome.