GWT 中的 IsSerializable 是啥?
Posted
技术标签:
【中文标题】GWT 中的 IsSerializable 是啥?【英文标题】: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 策略,并且该对象不存在意味着它不可序列化或其他东西。我如何事先知道是否可以序列化对象?
谢谢
【问题讨论】:
【参考方案1】:您使用的是什么版本的 GWT?
IsSerializable
接口是 GWT pre-1.4 的遗迹。您是否尝试过使用 Java 标准的 java.io.Serializable
标记接口?
请参阅this GWT FAQ 了解更多信息。
根据GWT serialization docs:
如果满足以下所有条件,则用户定义的类是可序列化的:
它可以分配给
IsSerializable
或Serializable
,要么是因为它直接实现了这些接口之一,要么是因为它派生自实现了这些接口的超类 所有非final
、非transient
实例字段本身都是可序列化的,并且 从 GWT 1.5 开始,它必须有一个默认(零参数)构造函数(带有任何访问修饰符)或根本没有构造函数。
所以你必须为你的类提供一个无参数的构造函数才能被 GWT 序列化。
【讨论】:
以上是关于GWT 中的 IsSerializable 是啥?的主要内容,如果未能解决你的问题,请参考以下文章