gwt autobean的多个编码器导致AssertionError

时间:2019-05-13 08:55:09

标签: serialization reflection gwt autobean

从JSON反序列化autobean时,我从AssertionError得到了com.google.web.bindery.autobean.shared.impl.AutoBeanCodexImpl.CoderCreator#getCoder。看来我的autobeans注册了两种类型:

  • my.project.model.MyAutoBean
  • java.lang.Class

当然,我发现第二个没有用,但我不知道它来自哪里以及如何摆脱它。当我禁用断言时,代码可以正常工作,并且可以完美地反序列化我的Autobean。

ClientPropertyContext的初始化中已经有两种类型,但是我无法调试MyAutoBean.traverseProperties中发生的事情。

1 个答案:

答案 0 :(得分:0)

我自己发现的:

我的autobean接口正在扩展另一个接口,该接口具有一种返回AutoBean的类的方法(以facoty方法解决Java类型擦除)。删除此方法后,它开始起作用。