Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

JPA+hibernate merge vs find roznice w pobieraniu lazy collection

36 views
Skip to first unread message

kamiseq

unread,
Dec 29, 2009, 4:33:16 PM12/29/09
to
czesc strasznie dziekuje za wszelka pomoc i mam jeszcze jedno pytanie
dotyczace dociagania leniwych kolekcji dla obiektow ktore sa odlaczone
od sesji.

zaczynajac od poczatku mam dwa entity GenObject i GenObjectCnf
polaczone one-to-many gdzie w GenObject
@OrderBy
@OneToMany(cascade = CascadeType.ALL, mappedBy = "objects", fetch =
FetchType.LAZY)
private List<GenObjectCfg> objectsCfgSet = new ArrayList<GenObjectCfg>
();

1.tworze obiekt GenObject i zachowuje go w bazie. tworze nową
instancje GenObjectCnf i przekazuje referencje wczesniej utworzonego
obiektu GenObject i nastepnie go zapisuje do bazy. wszystko jest ok,
dane sa zachowane, transakcja sie konczy, obiekty sa odczepione od
sesji.

2.teraz problem jest taki ze (ponownie wybrany np z interfacu) obiekt
GenObject nie wie o utworzonym pozniej GenObjectCnf poniewaz nie
przypisalem mu tej referencji. tak wiec w kolejnej transakcji chciałem
zmergowac ten obiekt aby hibernate dociągnął potrzebne dane

this.em.merge(object);
GenObjectCfg parentCfg = object.getObjectsCfgSet().get(0);

niestety kolekcja jest pusta.

NATOMIAST kiedy wywołam
GenObject go = this.em.find(GenObject.class, object.getIdObject());
GenObjectCfg parentCfg = go.getObjectsCfgSet().get(0);

poprzednio utowrzony obiekt GenObjectCfg zostanie dociagniety tak jak
sie tego spodziewałem przy operacji merge.

tak wiec moje ogromne pytanie brzmi co robie zle i czego nie jeszcze
nie rozumiem?????????

MZ

unread,
Jan 2, 2010, 6:09:52 AM1/2/10
to
kamiseq pisze:

> tak wiec moje ogromne pytanie brzmi co robie zle i czego nie jeszcze
> nie rozumiem?????????

spr�buj refresh zamiast merge
--
Pozdrawiam
Mateusz
http://na-jawie.blogspot.com

kamiseq

unread,
Jan 2, 2010, 12:16:27 PM1/2/10
to
On 2 Sty, 12:09, MZ <mat...@op.usun.to.pl> wrote:
> kamiseq pisze:
>
> > tak wiec moje ogromne pytanie brzmi co robie zle i czego nie jeszcze
> > nie rozumiem?????????
>
> spr buj refresh zamiast merge
> --
> Pozdrawiam
> Mateuszhttp://na-jawie.blogspot.com

dzieki, doszedlem do tego.

0 new messages