[jjbug-jboss 41] em.refresh()の挙動

24 views
Skip to first unread message

TANABE Junnichi

unread,
Jan 6, 2009, 12:03:30 AM1/6/09
to japan-jb...@lists.sourceforge.jp
お世話になります。田邉と申します。

em.refresh()したときの挙動で?と思うところがあったので、わかる方ご教示願
えないでしょうか?

Entity上に下記のように複数の@OneToManyを定義している場合で、ここで
em.refresh()した場合、想定したいのは、bs, cs両方が取得されることを期待し
たいのですが、実際には最初に定義しているbsのみが取得されてしまいます。

@OneToMany(cascade = {CascadeType.REMOVE, CascadeType.REFRESH}, fetch =
FetchType.LAZY, mappedBy = "a")
private Set<B> bs;

@OneToMany(cascade = {CascadeType.REMOVE, CascadeType.REFRESH}, fetch =
FetchType.LAZY, mappedBy = "a")
private Set<C> cs;

順番を並び替えるとcsだけが取得されるので、とりあえず凌いでいますが
FetchType.EAGERにする/適当にprintln()でも吐いてやりLAZYに取得する・・・
以外の方法でbs, cs両方を一度に取得する方法はないでしょうか。

よろしくお願いいたします。


以上

_______________________________________________
Japan-jbug-jboss mailing list
Japan-jb...@lists.sourceforge.jp
http://lists.sourceforge.jp/mailman/listinfo/japan-jbug-jboss

Reply all
Reply to author
Forward
0 new messages