2014-10-08 16 views
6

Tôi đã thêm chú thích @JsonInclude(Include.NON_NULL) vào lớp Phản hồi.@JsonInclude (Bao gồm.NON_NULL) không hoạt động như mong đợi

@JsonInclude(Include.NON_NULL) 
public class Response { 

    @JsonProperty 
    private String message; 

// getter-setters 
} 

Nếu giá trị là null tài sản không bao gồm trong JSON

Nhưng vẫn Tôi nhận được tài sản này như một NULL.

{ 
"message": null 
} 

Lý do có thể là gì? Tôi có thiếu gì không?

+0

Đó có phải là điểm của chú thích Include.NON_NULL không? Nếu bạn muốn tất cả các trường được đưa vào thì hãy xóa chú thích. Nó có thể làm việc vì @JsonSerialize (include = Inclusion.NON_NULL) không được chấp nhận. –

Trả lời

4

tôi đã cố gắng

@JsonSerialize(include = Inclusion.NON_NULL) 

intead của

@JsonInclude(Include.NON_NULL) 

và nó làm việc như mong đợi.

Phiên bản mới nhất sử dụng cú pháp này.

+0

Cảm ơn bạn! Tôi đã gặp vấn đề này trong dự án Spring của tôi, sử dụng phiên bản 2.3.3 của Jackson. –

+3

com.fasterxml.jackson.databind.annotation.JsonSerialize.Inclusion hiện không còn được dùng nữa: - / – snegi

Các vấn đề liên quan