Проблемы сериализации данных JSON с использованием RestTemplate - PullRequest
0 голосов
/ 12 февраля 2019

Я пытаюсь использовать RestTemplate для сериализации данных JSON из одного из наших API с помощью вызова GET.

Это похоже на то, как если бы метод getForObject ожидал значения XML в URL API, хотя на самом деле это JSONответ.Из всех поисков, которые я сделал, этот метод должен ожидать JSON, а не XML - так что же не так?

Любая помощь действительно приветствуется.

Контроллер

RestTemplate appApi = new RestTemplate();
Application app = appApi.getForObject("api url", Application.class);

Приложение

import lombok.Data;

@Data
public class Application {
    ApplicationDetails value;

    @Data
    public class ApplicationDetails {
        String salsaId;
        String itSystemName;
        String businessOwner;
        String businessOwnershipLob;
        String leadProgramme;
        String lifecycleStage;
    }
}

Пример ответа 'API URL' даст:

{
  "value": {
    "salsaId": "data",
    "itSystemName": "data",
    "businessOwner": "data",
    "businessOwnershipLob": "data",
    "leadProgramme": "data",
    "lifecycleStage": "data"
  }
}

На мой взгляд, все это должно работать идеально, и ответ на этот вызов API должен бытьсодержится в объекте приложения «приложение».Однако при запуске я получаю следующую ошибку:

2019-02-12 15:36:47.644 ERROR 864 --- [nio-8080-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed; nested exception is org.springframework.web.client.RestClientException: Error while extracting response for type [class com.***.tools.***.models.Application] and content type [application/xml;charset=UTF-8]; nested exception is org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Unexpected character '{' (code 123) in prolog; expected '<'
 at [row,col {unknown-source}]: [1,1]; nested exception is com.fasterxml.jackson.core.JsonParseException: Unexpected character '{' (code 123) in prolog; expected '<'
 at [row,col {unknown-source}]: [1,1]] with root cause

com.ctc.wstx.exc.WstxUnexpectedCharException: Unexpected character '{' (code 123) in prolog; expected '<'
 at [row,col {unknown-source}]: [1,1]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...