使用番石榴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不匹配?