Мы интегрируемся с третьей стороной, которая отправляет xml с заголовком типа содержимого как 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)