Как прочитать ответ xml с кодировкой UTF-16 Джексона и преобразовать его в кодировку UTF-8 - PullRequest
0 голосов
/ 18 июня 2019

Я работаю над загрузочным проектом Spring и хочу получить ответ через RestTemplate от веб-службы в формате xml с кодировкой «UTF-16», но моя кодировка по умолчанию - «UTF-8».Я использую для преобразования xml в объект представления Джексона.Как я могу преобразовать xml-ответ с кодировкой «UTF-16» в xml с кодировкой «UTF-8»

Мой xml-ответ ниже

<?xml version='1.0' encoding='utf-16' standalone="yes"?>
<employer>
<full_name>Test Emp</full_name>
<short_name>TEmpl </short_name>
<employer_inn>991</employer_inn>
<employer_ein>99</employer_ein>
<employer_sin>R0160520190431</employer_sin>
<employer_type>5</employer_type>
</employer>

Мой объект -

@JacksonXmlRootElement(localName="employer")
public class TaxEmployerRegistration {

    @JacksonXmlProperty(localName="full_name")
    private String employerName;

    @JacksonXmlProperty(localName="short_name")
    private String employerShortName;

    @JacksonXmlProperty(localName = "employer_inn")
    private String employerInn;

    @JacksonXmlProperty(localName = "employer_ein")
    private String employerEin;

    @JacksonXmlProperty(localName = "employer_sin")
    private String employerSin = null;

    @JacksonXmlProperty(localName="employer_type")
    private Long employerTypeId;

Моя ошибка ответа ниже:

`<Map><timestamp>17.06.2019</timestamp>
<status>400</status>
<error>Bad Request</error>
<exception>org.springframework.http.converter
.HttpMessageNotReadableException</exception>
<message>Could not read document: Declared encoding 'UTF-16' uses 2 bytes 
per character; but physical encoding appeared to use 1; cannot decode&#xd;
at [row,col,system-id]: [1,56,"N/A"]; nested exception is 
com.fasterxml.jackson.core.JsonParseException: Declared encoding 'UTF-16' 
uses 2 bytes per character; but physical encoding appeared to use 1; 
cannot decode&#xd;
at [row,col,system-id]: [1,56,"N/A"]</message>
<path>/api/employers/registerbyxml/tax</path>
</Map>`

>

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...