0

在 Liferay 7 中,我使用带有 getter/setter 的新字段自定义了我的 FooImpl.java(由 Foo 表中的服务构建器生成):

@ProviderType
public class FooImpl extends FooBaseImpl {

    private String toto;
    // and getter and setter

    public FooImpl() {
    }

}

我添加此字段是因为我希望它在以下方法的 Web 服务响应中(从 FooServiceImpl.java 中提取):

@JSONWebService(value = "get-foos", method = "GET")
@AccessControlled(guestAccessEnabled=true)
public List<Foo> getFoos(){
   ...
}

不幸的是,JSON 响应不包含自定义字段“toto”。

有人知道怎么做吗?

4

2 回答 2

2

非常感谢丹尼尔。我在您提供的文档中找到了答案。

其实很简单,只要给你的模型对象加上注解@JSON(strict = false),所有的自定义属性都会被序列化。

@JSON(strict = false)
@ProviderType
public class FooImpl extends FooBaseImpl {

    private String toto;
    // and getter and setter

    public FooImpl() {
    }

}
于 2016-12-16T09:54:44.397 回答
1

看看这个维基页面。我对这个话题没有直接的经验。让我知道这是否是正确的方法。

https://web.liferay.com/it/community/wiki/-/wiki/Main/JSON+Serialization#section-JSON+Serialization-Strict+mode

于 2016-12-15T20:55:28.270 回答