RequestContext
のcreate()
メソッドを使用して、クライアント上にプロキシを作成することができます。あなたの場合、プロキシはEntityProxy
ではなく、ValueProxy
でなければなりません。バリュープロキシを「格納」する必要はありません(エンティティプロキシとは異なります)。
私はあなたと全く同じユースケースを持っており、とてもうまく動作します。
@Service(MyService.class)
interface MyRequestContext extends RequestContext {
Request<List<TaskProxy>> findTasks(FilterProxy filter);
}
@ProxyFor(Filter.class)
interface FilterProxy extends ValueProxy {
// your getters and setters here
}
...側の注意点として
MyRequestContext ctx = ...;
FilterProxy filter = ctx.create(FilterProxy.class);
filter.setXxx(...);
// set your other filter
ctx.findTasks(filter).fire(new Receiver<List<TaskProxy>>() {
@Override
public void onSuccess(List<TaskProxy> tasks) {
// ...
}
});
は、あなたは間違っている、「唯一xxxProxyオブジェクトをパラメータとして使用することができ、」書きました。あなたは非常によく、プリミティブ型を使用することができます(int
、boolean
、など)、そのラッパー型(Integer
、Boolean
、など)、String
、Date
、そしてList
たり(またはプロキシタイプ)のSet
。
こんにちはステファン。あなたの問題を解決した場合は、Thomasの答えを正しいとマークしてください。フィードバックは、スタックオーバーフローの車輪を回転させ続ける。 –