List<Foo> foos
問題なくに送信できる がありますGWT RPC service
。しかし、そのリストを新しいオブジェクトにラップすると、起動時に例外が発生します。
subtype MyDTO is not assignable to 'com.google.gwt.user.client.rpc.IsSerializable' or 'java.io.Serializable' nor does it have a custom field serializer (reached via MyDTO)
リスト自体は送信できるのに、ラッパー オブジェクトは送信できないのはなぜですか?
と:
class MyDTO {
List<Foo> foos; //containing Rectanlges (see below)
public MyDTO() {}
List<Foo> getFoos() { return foos; }
void setFoos(List<Foo> foots) { this.foos = foos; }
}
Foo beeing は次のようなインターフェイスです。
interface Foo {
abstract int getX();
abstract void setX(int x);
}
class Rectangle implements Foo {
private int x;
public Rectangle() {};
//impl of foo methods
}
もちろん、この構造はあまり意味がありませんが、私の問題を説明しています。List foos を RPC 経由で送信するだけで、すべて正常に動作します。
foos のリストを保持する MyDTO ラッパーを送信すると、前述の例外がスローされます。ここで何が問題なのですか?