JsonMappingException:@JsonIgnore在序列化时被忽略

时间:2019-03-26 21:47:03

标签: jackson-databind wiremock

由于NullPointerException,这段代码生成了JsonMappingException:

@Test
public void helpMe() throws JsonProcessingException {
    StubMapping stub = StubMapping.NOT_CONFIGURED;
    ObjectMapper om = new ObjectMapper();
    System.out.println("Stub: " + om.writeValueAsString(stub));
}

事实上,它到了这里,所有字段均为空:

Caused by: java.lang.NullPointerException
    at com.github.tomakehurst.wiremock.http.ResponseDefinition.getProxyUrl(ResponseDefinition.java:286)

    @JsonIgnore
    public String getProxyUrl() {
        return this.browserProxyUrl != null ? this.browserProxyUrl : this.proxyBaseUrl + this.originalRequest.getUrl();
    }

@JsonIgnore文档:

  

标记注释,指示基于自省的序列化和反序列化功能将忽略被注释的方法或字段

对于在getter上带有@JsonIgnore的个人对象,序列化将按预期工作,并且getter将被忽略。 那么,为什么杰克逊尝试在Wiremock对象上使用@JsonIgnore注释反序列化字段?

注意:

  • 我尝试将mixins和filter设置为ObjectMapper,但是我总是得到 这个异常(无论如何,这不是一个很好的解释)
  • 一切都来自“ com.fasterxml.jackson”
  • 我不想禁用AUTO_DETECT_GETTERS

0 个答案:

没有答案