在当前的GWT项目中,我发现了一个奇怪的提交:标准类 com.google.gwt.user.client.rpc.IsSerializable
被替换为以下代码作为hack只是为了修复服务器端的一些序列化问题:
package com.google.gwt.user.client.rpc;
import java.io.Serializable;
public interface IsSerializable extends Serializable {
}
IsSerializable的标准定义是( gwt-user-2.8.1.jar ):
public interface IsSerializable {
}
在您看来,除了我看到的内容之外,还有其他含义:
事实上,我想知道,如果有其他危险的含义,我看不到。
答案 0 :(得分:2)
IsSerializable
类在GWT-RPC中为java.io.Serializable
提供支持。您可以完全避免IsSerializable
,并且只在任何与GWT-RPC兼容的对象中使用Serializable
。
编辑IsSerializable
以扩展Serializable
应该没有任何不良影响(除了Java 9点),但如果您根本不使用IsSerializable
,可能完全可以避免。那将是适当的解决方案。
答案 1 :(得分:0)
我认为这是一个"技巧"对于GWT-rpc,为了限制要导出以进行序列化的类的数量。 希望更接近核心的人会进入这个对话并提供更多见解。
TL; DR:如果你不使用GWT-rpc(你不应该)担心它(我不会)。