Estou tentando pela última vez resolver isso, se nao der agora eu desisto já que é por hobby mesmo. Nunca fiquei tanto tempo num problema. Já estou a semanas tentando resolver este erro e nada…pqp!
Se alguem puder dar uma luz, ai…por favor!! Já tentei muita coisa e nada funciona.
TeamModel
@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;
TeamDaoImpl
@Override
public void atualizar(Team team) {
Session session = HibernateUtil.getSessionFactory().getCurrentSession();
try {
session.beginTransaction();
session.update(team);
session.getTransaction().commit();
} catch (Exception e){
System.out.println("Erro ao atualizar: "+e.getMessage());
session.getTransaction().rollback();
} //finally {
//session.close();
//}
}
@Override
public Team findById(Integer id_team) {
Session session = HibernateUtil.getSessionFactory().openSession();
return (Team) session.load(Team.class, id_team);
}
@Override
public List<Team> findAll() {
Session session = HibernateUtil.getSessionFactory().openSession();
return session.createQuery("from Team ORDER BY id_flm ASC").list();
}
TeamBean
@ManagedBean(name="teamBean")
@ViewScoped
public class TeamBean implements Serializable {
FlmDaoImpl
public class FlmDaoImpl implements FlmDao {
@Override
public List<Flm> selectItems() {
List<Flm> listado = null;
Session sesion = HibernateUtil.getSessionFactory().getCurrentSession();
String sql = "FROM Flm";
try {
sesion.beginTransaction();
listado = sesion.createQuery(sql).list();
sesion.beginTransaction().commit();
} catch (Exception e) {
sesion.beginTransaction().rollback();
System.out.println("Erro no selecItemsFLM: "+e.getMessage());
}
return listado;
}
obs: merge() funciona só quando atualizada o campo “team name” e nao funciona para o campo “flm”