Мне нужно создать веб-сервис на основе файла WSDL, предоставленного внешним поставщиком.Внешний провайдер получит доступ к моему веб-сервису и отправит мне сообщение SOAP, например:
<soapenv:Body>
<ns1:SyncOrderRelationExt xmlns:ns1="http://www.huawei.com/schema/syncorder/v1-0/">
<ns1:userID>
<ns1:UserID>
<ns1:ID>12346579801234567890</ns1:ID>
<ns1:type>0</ns1:type>
</ns1:UserID>
</ns1:userID>
<ns1:SPID>35000001</ns1:SPID>
<ns1:productID>11111111111</ns1:productID>
<ns1:serviceID>35000001000001</ns1:serviceID>
<ns1:serviceList>44444444</ns1:serviceList> <!--OP-->
<ns1:updateType>1</ns1:updateType>
<ns1:updateTime>55555555555555</ns1:updateTime>
<ns1:updateDesc>222222</ns1:updateDesc> <!--OP-->
<ns1:effectiveTime>1256192581666</ns1:effectiveTime> <!--OP-->
<ns1:expiryTime>5555555</ns1:expiryTime> <!--OP-->
<ns1:extensionInfo> <!--OP-->
<ns1:NamedParameterList>
<ns1:NamedParameters>
<ns1:ArrayOfNameParameter>
<ns1:NamedParameter>
<ns1:key>notifyAddress</ns1:key>
<ns1:value>http://10.40.63.16:9999/syn</ns1:value>
</ns1:NamedParameter>
</ns1:ArrayOfNameParameter>
</ns1:NamedParameters>
</ns1:NamedParameterList>
</ns1:extensionInfo>
<ns1:notifyAddress> </ns1:notifyAddress> <!--OP-->
</ns1:SyncOrderRelationExt>
, и я должен ответить на него сообщением SOAP, например:
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:v1="http://www.huawei.com/schema/syncorder/v1-0/">
<SOAP-ENV:Header/>
<SOAP-ENV:Body>
<v1:SyncOrderRelationExtResponse>
<v1:hRet>0</v1:hRet>
</v1:SyncOrderRelationExtResponse>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Я создал проект веб-приложения с NetBeans, добавив ссылку на файл WSDL, и сделал страницу JSP с формой для заполнения, но мне нужно будет получить информацию из сообщения SOAP, проверить его и отправитьназад ответ.
Я создал класс для отправки SOAP-ответа, без проверки входящего сообщения, просто отправьте ответ при появлении SOAP-сообщения, следуя этому учебнику , но у меня есть проблемы с ответомнаправление, на которое я должен ответить.
Как я могу узнать направление, из которого мне отправляется SOAP-сообщение, и я должен ответить?Я знаю, что мое решение не самое лучшее, но я немного растерялся.