使用番石榴14.0 GWT RPC 2.5.1-RC1,如Guava libraries and GWT番石榴14.0 GWT串行化可选
番石榴集合的反序列化似乎是工作的精细描述使用Maven构建。然而,当我尝试反序列化包含Optional.Present的响应DTO时,我遇到了SerializationException。
Caused by: com.google.gwt.user.client.rpc.SerializationException: com.google.common.base.Present/3434853995
at com.google.gwt.user.client.rpc.impl.SerializerBase.getTypeHandler(SerializerBase.java:153)
望着SerializerBase.java:146的methodToJava映射不包含:
com.google.common.base.Present/3434853995
但它确实包含CustomFieldSerializer为:
com.google.common.base.Present/3491224270
那么,什么是了/ 3434853995映射?
这似乎像这样的哈希值(在编译时计算),其SerializerBase使用,以确保服务器端类型相同的客户端类型。 看着guava-gwt和服务器端的番石榴Optional.Present,这些不匹配。既然Present是在服务器端实例化的,它的哈希值与客户端的Present不匹配?