實體類
json字元串:
{"status":200,"responseBody":"{\"failRoomTypeList\":null,\"ResponseStatus\":{\"Timestamp\":\"/Date(1623299336391+0800)/\",\"Ack\":\"Success\",\"Errors\":[],\"Build\":null,\"Version\":\"v1\",\"Extension\":null},\"resultStatus\":{\"resultCode\":0,\"resultMsg\":\"success\"}}"}
JsonUtil.parserJson(response,ResponseResult.class);
報錯:
com.fasterxml.jackson.databind.exc.InvalidDefinitionException: Cannot construct instance of ResponseResult` (no Creators, like default construct, exist): cannot deserialize from Object value (no delegate- or property-based Creator)
at [Source: (String)"{"status":200,"responseBody":"{\"failRoomTypeList\":null,\"ResponseStatus\":{\"Timestamp\":\"/Date(1623299336391+0800)/\",\"Ack\":\"Success\",\"Errors\":[],\"Build\":null,\"Version\":\"v1\",\"Extension\":null},\"resultStatus\":{\"resultCode\":0,\"resultMsg\":\"success\"}}"}"; line: 1, column: 2]
stack:
at com.fasterxml.jackson.databind.exc.InvalidDefinitionException.from(InvalidDefinitionException.java:67)
at com.fasterxml.jackson.databind.DeserializationContext.reportBadDefinition(DeserializationContext.java:1592)
at com.fasterxml.jackson.databind.DeserializationContext.handleMissingInstantiator(DeserializationContext.java:1058)
at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromObjectUsingNonDefault(BeanDeserializerBase.java:1297)
at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserializeFromObject(BeanDeserializer.java:326)
解決方法:
加個預設構造方法。