Warum funktioniert @JsonInclude(JsonInclude.Include.NON_EMPTY) nicht?Java

Java-Forum
Anonymous
 Warum funktioniert @JsonInclude(JsonInclude.Include.NON_EMPTY) nicht?

Post by Anonymous »

Ich versuche, Nullwerte für die Datenbank mit leeren Werten aus der JSON-Nutzlast festzulegen. Dieses Problem wurde dadurch verursacht, dass ich eindeutige Einschränkungen für soziale-Entitätsfelder habe.
Ich habe ein Anforderungs-DTO, das wie folgt aussieht:

Code: Select all

@Value
@With
@Builder
@Jacksonized
public class AccountCreateRequest {

@NotBlank
String firstName;

String phone;

@Password
@NotBlank
String password;

@Email(message = "Email is not valid.")
@NotBlank
String email;

@NotBlank
String role;

SocialDto social;

}
Verschachteltes soziales DTO sieht aus wie

Code: Select all

@Value
@Builder
@Jacksonized
public class SocialDto {
@JsonInclude(JsonInclude.Include.NON_EMPTY)
String telegramId;

@JsonInclude(JsonInclude.Include.NON_EMPTY)
String linkedinLink;

@JsonInclude(JsonInclude.Include.NON_EMPTY)
String githubLink;
}
Json-Beispiel:

Code: Select all

{

...fields...,
social: {
telegramId: "",
githubLink: "",
...
}
}
Dieses JSON-Objekt wird mit sozialen leeren Zeichenfolgen deserialisiert und ignoriert diese Werte nicht.
Das Verschieben der Annotation auf Klassenebene hat bei mir nicht geholfen.
Wie kann ich dieses Problem beheben?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post