1

您使用 aCustomFieldSerializer 为对象定义自定义序列化和反序列化。

为您的类定义自定义序列化表面上很容易Xxx

  • 创建一个名为Xxx_CustomFieldSerializerextends的类CustomFieldSerializer<Xxx>
  • 实现抽象方法serializeInstancedeserializeInstance,以及可选instantiateInstance的 。

这会产生大量编译错误,归结为以下几点:

subtype Custom Field Serializer 'Xxx_CustomFieldSerializer' does not define a deserialize method: 'public static void deserialize(SerializationStreamReader reader,Xxx instance)' (reached via Xxx)'

它希望您创建静态方法,这些方法与实现的方法完全相同。显然,一个委托给另一个,但这意味着您不能为类似的类型提取所有这些样板Xxx

为什么?这是从旧版本的 GWT 遗留下来的还是什么?有没有办法避免写所有额外的东西?

4

1 回答 1

2

感谢 Thomas Broyer 找到了这个。这只是 GWT 的一个限制。

看:com.google.gwt.user.rebind.rpc.CustomFieldSerializerValidator

请参阅:http ://code.google.com/p/google-web-toolkit/issues/detail?id=7331&thanks=7331&ts=1335182609

于 2012-04-23T12:03:42.797 回答