1

我已经将我的项目从 GWT 2.4.0 更新到 GWT 2.5.1,突然一个特定的 RPC 序列化停止工作(所有其他仍在工作)。

我有这堂课:

public class StatusChangeMapEntity extends RecordStamp implements Serializable {

    private HashMap<WFStatus, Pair<WFPhase, ArrayList<Pair<AppUser, Date>>>> map;
    ...
    ...
}

异常消息是:

Attempt to deserialize an object of type class Pair when an object of type class Slide is expected

Slide 类扩展了 StatusChangeMapEntity 并且是被反序列化的对象。

任何想法如何解决这个问题?

谢谢。

4

1 回答 1

1

我已经设法解决了这个问题。基本上我创建了一个扩展 HashMap 的类:

public class MapStatusChanges extends HashMap<WFStatus, Pair<WFPhase, ArrayList<Pair<AppUser, Date>>>> {
   ...
}

然后为 MapStatusChanges 创建了一个 CustomSerializer。

这不是一个通用的解决方案,但在 GWT 解决这个问题之前它一直有效。

希望这可以帮助....

于 2013-03-26T01:03:29.073 回答