简体   繁体   中英

com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field “message” exception

please check the below code

import java.util.HashMap;
import java.util.Map;

import com.fasterxml.jackson.annotation.*;

@JsonInclude(JsonInclude.Include.NON_NULL)
@JsonPropertyOrder({
        "countryCode",
        "description",
        "message"
})

public class Country {

    @JsonProperty("countryCode")
    private String countryCode;
    @JsonProperty("description")
    private String description;
    @JsonIgnore
    private Map<String, Object> additionalProperties = new HashMap<String, Object>();

    @JsonProperty("countryCode")
    public String getCountryCode() {
        return countryCode;
    }

    @JsonProperty("countryCode")
    public void setCountryCode(String countryCode) {
        this.countryCode = countryCode;
    }

    @JsonProperty("description")
    public String getDescription() {
        return description;
    }

    @JsonProperty("description")
    public void setDescription(String description) {
        this.description = description;
    }

    @JsonAnyGetter
    public Map<String, Object> getAdditionalProperties() {
        return this.additionalProperties;
    }

    @JsonAnySetter
    public void setAdditionalProperty(String name, Object value) {
        this.additionalProperties.put(name, value);
    }

}

below is the stackTrace

com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "message" (class Dialog.Api.Testing.ReferenceData.models.Country), not marked as ignorable (2 known properties: "countryCode", "description"])
     at [Source: (String)"{"message":"Success","code":"0000","traceId":"abc1234567","origin":"/reference-data/countries","details":"https://confluence.coe.dialog.lk/display/CRMREW/Error+Codes","timestamp":"2020-07-09 15:28:38","data":{"countries":[{"countryCode":"ALBVF","description":"ALBANIA"},{"countryCode":"ALG","description":"ALGERIA"},{"countryCode":"DZA","description":"ALGERIE"},{"countryCode":"AND","description":"ANDORA"},{"countryCode":"ANT","description":"ANTIGUA"},{"countryCode":"ARG","description":"ARGENTINA"}"[truncated 14184 chars]; line: 1, column: 13] (through reference chain: Dialog.Api.Testing.ReferenceData.models.Country["message"])

In your @JsonInclude You puted 3 properties. on the other hand you don't add setter and getter to message property.

Duplicated with: Jackson with JSON: Unrecognized field, not marked as ignorable

There is no property with the name message at the class you mentioned. Does something missing from your code? If you're trying to put the message value inside the map so you should remove the specification of message property at the @JsonPropertyOrder .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM