【问题标题】:what IsSerializable or not in GWT?GWT 中的 IsSerializable 是什么?
【发布时间】:2011-03-21 14:49:18
【问题描述】:

我的 GWT 项目中有这个简单的对象。我无法通过网络发送它。这样的类是不能放构造函数的吗?

public class MceDto implements IsSerializable {
    public MceDto(String uri, String tag) {
        this.uri = uri;
        this.tag = tag;
    }

    public String uri;

    public String tag;

    public Date created;
}

我检查了 *.gwt.rpc 策略,并且该对象不存在意味着它不可序列化或其他东西。我如何事先知道是否可以序列化对象?

谢谢

【问题讨论】:

    标签: serialization gwt gwt-rpc


    【解决方案1】:

    您使用的是什么版本的 GWT?

    IsSerializable 接口是 GWT pre-1.4 的遗迹。您是否尝试过使用 Java 标准的 java.io.Serializable 标记接口?

    请参阅this GWT FAQ 了解更多信息。


    根据GWT serialization docs

    如果满足以下所有条件,则用户定义的类是可序列化的:

    1. 它可以分配给IsSerializableSerializable,要么是因为它直接实现了这些接口之一,要么是因为它派生自实现了这些接口的超类
    2. 所有非final、非transient 实例字段本身都是可序列化的,并且
    3. 从 GWT 1.5 开始,它必须有一个默认(零参数)构造函数(带有任何访问修饰符)或根本没有构造函数。

    所以你必须为你的类提供一个无参数的构造函数才能被 GWT 序列化。

    【讨论】:

      猜你喜欢
      • 2011-03-05
      • 1970-01-01
      • 1970-01-01
      • 2018-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-10-19
      • 1970-01-01
      相关资源
      最近更新 更多