私はここで立ち往生 !任意の助けをいただければ幸いです。
私の場合、モジュールに @OneToMany 関連付けがあります。
class Parent{
@OneToMany(
mappedBy="parent"
)
return List<Child> getChildren();
}
class Child{
@ManyToOne
return Parent getParent();
}
私が望むクライアント側では、オブジェクトマップ全体を取得します。
私はこれを行います(DataGridを表示するAsyncDataProvider):
requestContext.getParents().with("children").fire(new Receiver<CallbackProxy>() {
@Override
public void onSuccess(CallbackProxy response) {
display.setRowData(range.getStart(),response.getParents());
updateRowCount(response.getCount().intValue(), true);
}
});
私のDAOは、マップ全体を照会するだけです。
Criteria criteria = session.createCriteria(Parent.class);
criteria.setFetchMode("children", FetchMode.JOIN);
criteria.setResultTransformer(Criteria.DISTINCT_ROOT_ENTITY);
/* we got all the map here on the server side */
Callback callback = new Callback();
callback.setCount(count);
callback.setParents(criteria.list());
return callback;
しかし、私は子供を得ることができません。それらのリストは null です。with("children") を使用していることに注意してください
ありがとうございました。