Hallo!
Ich habe eine in der Datenbank abgelegte Baumstruktur. Um die Baumstruktur abrufen zu können habe ich mir eine Entitätsklasse angelegt, die mit @OneToMany auf sich selbst verweist. Als Initialisierungsmethode hatte ich zunächst Lazy eingestellt, was dann aber dazu geführt hat, dass ich außerhalb einer Transaktion die Kindelemente nicht abrufen kann ("
failed to lazily initialize a collection of role").
Auf Eager möchte ich aber auch nicht umstellen, weil es in meinem Fall dazu führen würde, dass im Zweifel eine große Baumstruktur immer und immer wieder initialisiert wird, obwohl es nicht nötig ist. Im übrigen wäre das der Performance abträglich.
Hat jemand einen Tipp, wie ich das am Besten in den Griff bekomme? Kann ich irgendwo einstellen, dass automatisch eine Transaktion geöffnet wird, wenn ich auf die Kindelemente zugreifen möchte?
Viele Grüße
Stefan
Ich habe eine in der Datenbank abgelegte Baumstruktur. Um die Baumstruktur abrufen zu können habe ich mir eine Entitätsklasse angelegt, die mit @OneToMany auf sich selbst verweist. Als Initialisierungsmethode hatte ich zunächst Lazy eingestellt, was dann aber dazu geführt hat, dass ich außerhalb einer Transaktion die Kindelemente nicht abrufen kann ("
failed to lazily initialize a collection of role").
Auf Eager möchte ich aber auch nicht umstellen, weil es in meinem Fall dazu führen würde, dass im Zweifel eine große Baumstruktur immer und immer wieder initialisiert wird, obwohl es nicht nötig ist. Im übrigen wäre das der Performance abträglich.
Hat jemand einen Tipp, wie ich das am Besten in den Griff bekomme? Kann ich irgendwo einstellen, dass automatisch eine Transaktion geöffnet wird, wenn ich auf die Kindelemente zugreifen möchte?
Viele Grüße
Stefan