Я перевожу свое приложение на Java 11 и Tomcat 9 с Java 8 и Tomcat 7. С некоторыми обновлениями версий, незначительными изменениями в реализации и добавлением нескольких зависимостей maven я смог успешно скомпилировать и запустить свое приложение.Однако у меня есть несколько интеграционных тестов, написанных для тестирования веб-сервисов на основе Soap в моем приложении, которые не работают.Это происходит из-за несоответствия в ожидаемом ответе Мыла и фактическом ответе.
Вот два ответа: Фактический:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<S:Envelope
xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Header/>
<S:Body
xmlns:ns2="http://www.acd.org/cact/namespaces/StandardBusinessDocumentHeader"
xmlns:ns3="urn:global:cpci-query:xsd:1"
xmlns:ns4="urn:global:cpci-masterdata:xsd:1"
xmlns:ns5="urn:global:cpci:xsd:1">
<ns3:GetResult>
<string>SimpleDataQuery</string>
<string>SimpleQuery</string>
</ns3:GetResult>
</S:Body>
</S:Envelope>
Ожидаемый:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Body>
<ns5:GetResult
xmlns:ns5="urn:global:cpci-query:xsd:1">
<string>SimpleQuery</string>
<string>SimpleDataQuery</string>
</ns5:GetResult>
</soapenv:Body>
</soapenv:Envelope>
У pom есть следующие обновленные записи:
<dependency>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-ri</artifactId>
<version>2.3.2</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>javax.activation</groupId>
<artifactId>javax.activation-api</artifactId>
<version>1.2.0</version>
</dependency>
Может ли Java 11 повлиять на порядок элементов ответов WS?Если да, то это из-за устаревших зависимостей или нам нужно изменить некоторые реализации?