Мы интегрируем с третьей стороной, которая отправляет xml с заголовком content-type в виде text/html. Мы планировали использовать Spring RestTemplate для сопоставления его с классами, которые мы создали из xsds, но RestTemplate не может найти подходящий конвертер для использования для контента. Третья сторона отказывается исправить тип контента, поскольку может нарушить интеграцию с другим партнером.
Есть ли способ с Spring RestTemplate заставить его использовать конкретный конвертер? В основном мы делаем следующее:
RestTemplate restTemplate = new RestTemplate();
XmlClass xmlClass = restTemplate.getForObject("http://example.com/", XmlClass.class);
И получите следующее исключение:
org.springframework.web.client.RestClientException: не удалось извлечь ответ: нет подходящего HttpMessageConverter, найденного для типа ответа [XmlClass] и тип содержимого [text/html; charset = ISO-8859-1] в org.springframework.web.client.HttpMessageConverterExtractor.extractData(HttpMessageConverterExtractor.java:84)