我正在尝试避免在POJO上使用getter和setter方法,但是Jersey正在使用我的getter方法将POJO转换为JSON。
我尝试使用Yasson,但是当我尝试删除自己的吸气剂时,它只会返回空白JSON。
// the POJO
import javax.json.bind.annotation.JsonbProperty;
public final class LoginParameter {
@JsonbProperty("endpoint")
private String endPoint;
@JsonbProperty("company-id")
private String companyId;
public LoginParameter() {
endPoint = "";
companyId = "";
}
// trying to return JSON
final LoginParameter loginInfo = new LoginParameter();
loginInfo.setCompanyId("test");
loginInfo.setEndPoint("endpoint!");
return Response.status(Status.OK)
.entity(jsonb.toJson(loginInfo))
.type(MediaType.APPLICATION_JSON_TYPE).build();
答案 0 :(得分:1)
默认情况下,yasson不会序列化私有成员。为了使字段能够被公开,或者将自定义javax.json.bind.config.PropertyVisibilityStrategy
添加到运行时。