Ich steh gerade vor einem kleinen Problem, ich hab ein Objekt User das eine Liste von Tracks hat die per Lazybinding verknüpft sind.
Ich lad erst den User und dann füge ich Tracks ein aber sobald ich dem User die Tracks hinzufügen will meckert Hibernate weil die Session schon zu ist.
Weiß jemand wie ich das per Spring steuern kann?
Wenn Du den User zwischendurch von der Session detachen willst, dann musst Du halt die Tracks direkt mitladen. So ungefähr:
from User u left join fetch u.tracks
ja das hab ich auch schon irgendwie gedacht, aktuell lad ich ihn direkt mit über die Fetchannotation
Fetch LAZY / EAGER per Annotation funktioniert aber nur, wenn Du per Session#get() die Objekte liest. Sobald Du per HQL oder Criteria API ein Statement abfeuerst, werden diese Annotations ignoriert.
Ach so, schön zu wissen, ich muss eh meinen Hibernateteil noch etwas verbessern, da kann ich das gleich mit umbauen.