org.springframework.http.converter.HttpMessageNotWritableException:无法写入JSON

Viv*_*iri 3 spring resttemplate

org.springframework.http.converter.HttpMessageNotWritableException:无法写入JSON:(是java.lang.NullPointerException)(通过引用链:in.xyz.sync.dto.ClassRoom [“id”]);嵌套异常是 com.fasterxml.jackson.databind.JsonMappingException: (was java.lang.NullPointerException) (通过引用链: in.xyz.sync.dto.ClassRoom["id"])

import java.util.List;

import org.codehaus.jackson.annotate.JsonIgnoreProperties;
import org.codehaus.jackson.map.annotate.JsonSerialize;

@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
@JsonIgnoreProperties(ignoreUnknown = true)
public class ClassRoom extends CommonResponse {

    private long classId;
    private String clientClassRoomId;
    private long instituteId;
    private long teacherId;
    private String className;
    private long handleId;
    private int archived;
    private int deleted;
    private String creationTime;
    private String modifiedTime;
    private int type;
    private String classCode;
    private List<Student> student;
    private String handle;
    private String firstName;


}
Run Code Online (Sandbox Code Playgroud)

Dav*_*ure 6

在 ClassRoom 类中,从基元(int 和 long)切换到 Java 类(Int 和 Long)可能会获得更好的结果。请参阅JsonMappingException(原为 java.lang.NullPointerException)

您还可以通过将 @NotNull (javax.validation.constraints.NotNull) 分配给所有字段来确定哪个字段为空。如果遇到空值,@NotNull 注释将导致运行时异常。然后,逐一注释掉 @NotNull 注释,直到异常消失,您将找到罪魁祸首(或者至少是其中的第一个,如果有多个)。