WSDL не имеет определения полного запроса - PullRequest
0 голосов
/ 07 мая 2020

Я импортировал 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 ошибку, используя фабрику объектов, которую я нашел здесь

...