org.springframework.http.converter.HttpMessageNotWritableException: could not write JSON
org.springframework.http.converter.HttpMessageNotWritableException:
Konnte nicht schreiben, JSON: (war java.lang.NullPointerException) (durch
Referenz chain:.xyz.sync.dto.Klassenzimmer["id"]); verschachtelte Ausnahme ist
com.fasterxml.jackson.databind-Methode.JsonMappingException: (war
java.lang.NullPointerException) (durch Verweis Kette:
in.xyz.sync.dto.Klassenzimmer["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;
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie möglicherweise bessere Ergebnisse, Wechsel von primitiven (int & lang), um Java-Klassen (Int & Lang) in Ihre Klassenzimmer der Klasse. Sehen JsonMappingException (war java.lang.NullPointerException)
Könnten Sie auch Glück haben, pinning das Feld null ist durch die Zuordnung @NotNull (javax.die Validierung.- Einschränkungen.NotNull), um alle Ihre Felder. Wenn Sie Auftritt, wird ein null-Wert für die @NotNull annotation verursacht eine exception zur Laufzeit. Dann kommentieren Sie die @NotNull Anmerkungen eins nach dem anderen, bis die Ausnahme geht Weg und du wirst den Schuldigen finden (oder zumindest die erste von Ihnen, wenn es gibt mehr als eine).
Verbringe ich einen ganzen Tag zu beheben, eine Fehlermeldung. In meinem Fall war ich mit dieser Nullpointer, denn ich hatte einen Serializer, hatte eine Abhängigkeit, die nicht instanziiert, und der Kontext, der die ursprüngliche Ausnahme war Weg! :'( so seine Botschaft war nicht ausdrucksstark genug.
Ich hatte zu Debuggen, viele Male, bis ich meine Bohne, die war nicht ordnungsgemäß instanziiert. Es hat etwas zu tun mit Feder MockMvc (ich musste ein workaround, ich meine, stoppen Sie die Verwendung dieses mock. Immer noch gespannt, damit es funktioniert )
In meinem Fall Letzte externe Bibliothek Methode zu finden, bevor meine Klasse war:
com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(Object bean, JsonGenerator jgen, SerializerProvider prov)
War es hier, Letzte externe Klasse, von wo ich kam NullPointerException. Also meine Empfehlung ist die Spur, die NullPointerException, bis Sie die exakte Linie. Das wird wahrscheinlich Ihnen sagen, was passiert.
Hoffe, es hilft.
In meinem Fall hatte ich gerade zu ersetzen, die int von Integer:
z.B.:
Tat das gleiche für getter und setter.
Dieser mein Problem gelöst.
Im Grunde war ich mit diesem Thema, da wurde ein null-Wert in dieser Spalte.
Verwendung: Spring Boot + PostgreSQL
Hinweis: Dave McLure' Antwort ist die Lösung auch.