Problema com hibernate

Boas, estou com um problema que quando atualizo um objecto no banco de dados com hibernate, altera dois dos atributos (LocalDate), retirando um dia em ambos.

DAO:

public class EstadiaDao implements Dao<Estadia> {

private EntityManager em;

public EstadiaDao(EntityManager manager) {
    this.em = manager;
}

@Override
public void atualizar(Estadia estadia) {
    comecarTransaction();
    this.em.merge(estadia);
    commitarTransaction();
}

Classe:

@Entity
public class Estadia {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
private LocalDate entrada;
private LocalDate saida;
@OneToOne(mappedBy = "estadia")
private Reserva reserva;
@ManyToOne
private Cliente cliente;

Codigo de Teste:

public static void main(String[] args) throws IOException, InvalidFormatException {
        EstadiaDao dao = new EstadiaDao(new JPAUtil().getEntityManager());
        Estadia estadia = dao.get(13);
        estadia.setGaragem(!estadia.temGaragem());
        dao.atualizar(estadia);
        dao.fecharEntityManager();
    }

Já aconteceu a alguém?

Qual o problema?

Esse

Mas qual o objetivo de seu programa, o que você
quer que seu codigo faça?

O código acima foi apenas para tentar saber o que estava a acontecer após varias vezes ao guardar o objeto no programa em si (Hotel Management), aparecerem as datas modificadas sem razão aparente. Esse código é suposto apenas alterar um campo do objeto e salvá-lo-

certo, entendi, e como é o relacionamento entre as classes: ex: 1 cliente - * reservas?

Esta aplicação tem hibernate como ORM e o que no front? É web? JSF?

Classe cliente:

@Entity
public class Cliente implements Serializable {

@OneToMany(mappedBy = "cliente", fetch = FetchType.EAGER, cascade = CascadeType.ALL)
private Set<Estadia> estadias;

}

Classe reserva:

@Entity
public class Reserva {

@OneToOne
private Estadia estadia;

}

Classe Estadia:

@Entity
public class Estadia {

    @OneToOne(mappedBy = "estadia")
    private Reserva reserva;
    @ManyToOne
    private Cliente cliente;
}

É uma aplicação swing

Perguntei sobre jsf pois havia um problema com versões antigas, sempre setavam a data como D - 1…
De qualquer forma, será necessário observar a razão pela qual isso está ocorrendo.
Nada é alterado sem que você, explicitamente, defina isso.

Nesse codigo nao tem nada que indique para alterar os dias e muda. Até já meti um sysout no metodo setEntrada() mas nao imprimia nada.