我收到以下异常:
com.google.gwt.user.client.rpc.SerializationException:类型“ java.lang.Long”未包含在可以通过此SerializationPolicy进行序列化的类型集中,或者无法加载其Class对象。为了安全起见,此类型将不会序列化
使用GWT 2.1和内置的Jetty服务器。根据文档,此类型肯定是可序列化的…我如何将其包括在SerializationPolicy中?
需要在RPC服务中包括一个多余的方法,该方法将许多对象“白名单”。这是由于使用泛型而产生的,GWT无法确定我可能要序列化的对象包含在某个泛型中。
我包括了可能需要作为对象成员()进行序列化的所有类型SerializableWhitelist。我向RPC Servlet对象添加了一个方法,例如:
SerializableWhitelist
public SerializableWhitelist junk(SerializableWhitelist l) { return null; }
值得注意的是,您 需要 将白名单数据类型既作为参数又作为返回类型包括在内,因为GWT显然维护着两个单独的序列化策略。