Я пишу контрольные примеры с уверенностью и мерой. Я не могу исправить парсинг ответа, когда дело доходит до сложных объектов (с List это работает хорошо). У меня есть следующие структуры:
public class SearchResult<T extends Serializable> {
private List<T> pageEntries;
private long totalCount;
private long size;
}
Конечная точка ожидает SearchResult .
JSON получено:
{
"pageEntries": [
{
"id": "89ca75da-7c9c-4a05-987b-61bd7b34a234",
"name": "1996570e-af78-4848-aeea-2d8e2ad9ec1c",
"typeAssignments": [],
"preInserted": true
}
],
"totalCount": 1,
"size": 1
}
Я сохранил ответ в хранилище данных датчика как объект Searchresult, но тип pageEntries является LinkedHashmap, а не DummyResult, как ожидалось.
@Step("Save result as <storeKey>")
public void saveResultX(final String storeKey) {
final Class className = (Class) suiteDataStore.get(RESPONSE_CLASS);
saveDTO(className, storeKey);
final SearchResult dto = (SearchResult) suiteDataStore.get(storeKey);
log.info(dto.getPageEntries().get(0).getClass().getName());
}
, и я получил java .util.LinkedHashMap ....
Любая идея, как сопоставить класс DummyResult из ответа (без извлечения extract (). path ("pageEntries")?