0

详细信息:我认为我从 rpc 返回了无效的对象列表。我认为它的类型不能被序列化..有人知道序列化它的方法吗?或一些解决方法?

我有一个无法序列化的类我收到以下异常: 原因: "com.google.gwt.user.client.rpc.SerializationException: Type 'gwt.client.objects.NamedObject' was not included in the set of types which can be serialized by this SerializationPolicy or its Class object could not be loaded. For security purposes, this type will not be serialized.: instance = gwt.client.objects.NamedObject@613bc2a6"

这是“NamedObject”类源代码,我将返回一个列表。

public class NamedObject<T> implements Serializable {
    private String name;
    private T object;

    public void setNamedObject(String name, T object){
    setName(name);
    setObject(object);
    }
    public String getName() {
        return name;
    }

    public Object getObject() {
        return object;
    }
}
4

1 回答 1

1

您的对象参数是 T 类型,它可以是任何东西,特别是 GWT 不知道如何序列化的东西。

你可以试试这个

public class NamedObject<T extends IsSerializable> implements Serializable {
...
}

虽然我不确定这会奏效。如果没有,您可能必须为 T 可以是的每种类型创建多个类:

public class StringNamedObject implements Serializable {
    private String name;
    private String object;
}

public class DateNamedObject implements Serializable {
    private String name;
    private Date object;
}

....
于 2012-06-14T13:43:03.160 回答