Spring XML-запрос конвертируется в нули - PullRequest
0 голосов
/ 18 октября 2019

У меня есть контроллер, на который я хочу отправить сообщение XML. Используя XSD для сообщения, я создал объекты Java с помощью плагина cxf-xjc-plugin. Корневой элемент выглядит следующим образом:

@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "MessageType", propOrder = {"header", "moreHere"})
public class MessageType {

    @XmlElement(name = "Header", required = true)
    protected HeaderEntiteitType header;

    // more code here
}

Я создал контроллер для получения такого сообщения:

@RestController
@RequestMapping("calc")
public class AppController {

    @PostMapping("endpoint")
    @ResponseBody
    public Response doTheThing(@RequestBody MessageType message) {
        return doThing(message);
    }
}

У меня сложилось впечатление, что Spring должен автоматически работать, если я отправляюHTTP-сообщение с Content-Type application/xml. Поэтому я отправляю следующее сообщение:

<Message><Header>something goes here</Header></Message>

Но я получаю объект MessageType, который имеет значения null для всех своих атрибутов. Я полагаю, что это связано с чем-то связанным с @XmlRootElement, поскольку у меня его нет, и нигде не указывается, что объект MessageType должен искать элемент с именем Message. Поэтому я попытался добавить @XmlRootElement(name = "Message") к MessageType объекту, чтобы проверить, работает ли он, но это ничего не меняет в результате.

Где я ошибаюсь?

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