【问题标题】:AutoBeanCodex.encode leaves out properties with default valuesAutoBeanCodex.encode 省略了具有默认值的属性
【发布时间】:2012-07-26 11:45:35
【问题描述】:

我正在通过转换为 JSON 的 AutoBeans 与 Web 服务通信。问题是 Web 服务希望 JSON 对象的每个属性都存在于请求中,而 AutoBeanCodex.encode() 似乎忽略了所有具有默认值的属性(尽管这些属性已明确设置)。

有没有办法也包含这些属性?

编辑: Thomas 的回答已经帮了很大的忙,但它仍然留下了一个小问题。即一个空数组(在我的例子中是List<Integer>)也被吞没了,显然是因为默认值是空数组而不是null

【问题讨论】:

    标签: gwt autobean


    【解决方案1】:

    一种解决方法可能是使用包装类型而不是原始类型,例如Boolean 代替booleanInteger 代替int;这样,默认值将是null,而不是false0

    【讨论】:

    • 谢谢,从某种意义上说,这应该是一个明显的解决方法。当我忙着想办法改变这种行为,甚至找到关于它的最微小的文档时。
    • 还有一个小问题,List<Integer> 也会产生一个遗漏的属性,而不是一个空数组。关于那个有什么提示吗?
    • 有人找到解决方案了吗?我对 Date 有类似的问题。我需要 json 为我的日期值设置 null。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-30
    • 2013-10-17
    • 1970-01-01
    • 1970-01-01
    • 2014-02-03
    • 1970-01-01
    相关资源
    最近更新 更多