我关注PoJo:
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class KostenpflichtigeBuchung {
private String buchungZahlungsId;
private String warenkorbId;
private String pseudocardpan;
private Zahlungsmittel zahlungsmittel;
private String landKreditkartenInhaber;
private String nameKreditkartenInhaber;
private String touchpointId;
private String vertriebspartnerId;
private Kundendaten kundendaten;
private Fulfillmentart fulfillmentart;
private final List<Reisender> reisenderList = new ArrayList<>();
@JsonIgnore
private Map<String, Object> payload;
@JsonAnyGetter
public Map<String, Object> getPayload() {
return payload;
}
@JsonAnySetter
public void setPayload(String name, Object value) {
if (payload == null) {
payload = new HashMap<>();
}
payload.put(name, value);
}
}
当我对它执行黄瓜测试时,我得到以下例外:
org.springframework.web.client.RestClientException: Could not extract response: no suitable HttpMessageConverter found for response type [class de.db.vendo.bue.buchung.model.KostenpflichtigeBuchung] and content type [application/json;charset=utf-8]
at org.springframework.web.client.HttpMessageConverterExtractor.extractData(HttpMessageConverterExtractor.java:109)
at org.springframework.web.client.RestTemplate$ResponseEntityResponseExtractor.extractData(RestTemplate.java:917)
at org.springframework.web.client.RestTemplate$ResponseEntityResponseExtractor.extractData(RestTemplate.java:901)
at org.springframework.web.client.RestTemplate.doExecute(RestTemplate.java:655)
at org.springframework.web.client.RestTemplate.execute(RestTemplate.java:613)
at org.springframework.web.client.RestTemplate.exchange(RestTemplate.java:531)
我有一些其他测试和其他具有相同注释的POJO,它们没有任何问题。我真的不知道出了什么问题。
感谢任何建议!
答案 0 :(得分:0)
很可能在 lombok 构造函数注释和相关生成的构造函数之间发生问题,通常当我遇到此错误时,我只将响应类还原为@NoArgConstructor,然后重试。
如果您确实需要所有这些构造函数和构建器,请尝试手动编码并与@JsonCreator一起使用,如此thread中的describe。