Hi Nicole,
to my understanding, using "FetchType=EAGER" on both sides is a bit dangerous, because loading an "Appointment" entity would load all related "Offers", and loading those "Offers" would trigger a loading of "Appointments" and so on.
So I assume that Hibernate somehow detects this cycle and stops loading data.
Better use FetchType = LAZY with ManyToMany relationships.
You might also switch on SQL logging and take a look at the statements. Maybe you will find a hint there.
Hope this helps
Wolfgang