Я импортировал WSDL в проект Spring Boot, используя jaxb2
. Я импортировал тот же WSDL в SOAP UI, он дает мне что-то вроде
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsd=xmlns="http://www.url.com/">
<soap:Header/>
<soap:Body>
<xsd:QueryUserProfileBO>
<type>?</type>
<id>?</id>
</xsd:QueryUserProfileBO>
</soap:Body>
</soap:Envelope>
Этот запрос не имеет заголовка, но согласно документации API запрос должен быть похож на
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns="http://www.url.com/>
<soap:Header>
<AuthHeader xmlns="http://www.url.com/">
<Username>string</Username>
<Password>string</Password>
</AuthHeader>
</soap:Header>
<soap:Body>
<xsd:QueryUserProfileBO>
<type>?</type>
<id>?</id>
</xsd:QueryUserProfileBO>
</soap:Body>
</soap:Envelope>
Итак мой первый вопрос: могу ли я сгенерировать требуемый запрос, написав собственный код?
Я также получаю сообщение об ошибке it is missing an @XmlRootElement annotation
Я думаю, это потому, что я только маршалирую тело запроса.
РЕДАКТИРОВАТЬ: Я решил @XmlRootElement annotation
ошибку, используя фабрику объектов, которую я нашел здесь