【问题标题】:How to convert Model to JSON如何将模型转换为 JSON
【发布时间】:2018-10-18 14:50:25
【问题描述】:

当我天真地使用 Jackson 转换为 JSON 时,我收到了这个异常:

原因:com.fasterxml.jackson.databind.exc.InvalidDefinitionException:没有为类 org.apache.cayenne.access.DefaultDataRowStoreFactory 找到序列化程序,也没有发现用于创建 BeanSerializer 的属性

编辑:我想做这样的事情:

ObjectContext context = cayenneRuntime.newContext();

List<User> users = ObjectSelect.query(User.class).select(context);
JsonObject json = Json.mapper.convertValue(obj, Map.class)

有没有现成的解决方案?谢谢

【问题讨论】:

  • 能发一些代码吗?

标签: json apache-cayenne


【解决方案1】:

考虑到在一般情况下,Cayenne 不仅为您提供对象,还为您提供对象的虚拟,序列化到 JSON 成为一个比最初看起来更古怪的话题。

简短的回答:您必须为对象图的任何子图手动构建 JSON。

虽然不是直接的答案,但值得一提的是Agrest framework(例如 LinkRest)支持将 Cayenne 对象图基于规则的序列化为 JSON。但它不是一个独立的组件。 IE。只有将它用于 REST 服务时,它才会起作用。

【讨论】:

    猜你喜欢
    • 2014-06-30
    • 1970-01-01
    • 1970-01-01
    • 2012-05-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多