jackson 打印空的 JSON 字符串

xpg*_*g94 5 java json jackson playframework

我有一个 Java 程序,它应该使用 jackson(播放框架)序列化对象。它正在工作,但我以某种方式搞砸了,现在我无法让它工作。这是我的序列化程序

public String serializeObject(Object object) {
    ObjectWriter ow = new ObjectMapper().writer().withDefaultPrettyPrinter();
    String json = null;
    try {
        json = ow.writeValueAsString(object);
    } catch (JsonProcessingException e) {
        e.printStackTrace();
    }
    return json;
}
Run Code Online (Sandbox Code Playgroud)

这是运行它的代码:

return badRequest(serializeObject(new Error("bad input")));
Run Code Online (Sandbox Code Playgroud)

和错误类:

public class Error {
    private String error;

    public Error(String error) {
        this.error = error;
    }
}
Run Code Online (Sandbox Code Playgroud)

作为输出,我得到的只是 { }

怎么了?

Öme*_*den 9

Error Class的属性需要有你想在JSON输出中显示的 setter 和 getter

public String getError() {
    return error;
}

public void setError(String error) {
    this.error = error;
}
Run Code Online (Sandbox Code Playgroud)