ТРЕТЬЕ ИЗМЕНЕНИЕ: Теперь я считаю, что эта проблема связана с несоответствием версии SOAP (запрос 1.1, ответ 1.2), маскирующимся под проблему пространства имен. Является ли смешивание версий незаконным или это просто плохой стиль? Мне совсем не повезло, если я не могу изменить свою версию SOAP или версию службы?
ВТОРОЕ РЕДАКТИРОВАНИЕ: Уточнено сообщение об ошибке и предпринята попытка уменьшить "tl;dr"-ность.
РЕДАКТИРОВАТЬ: [Ссылка удалена, не связана]
Используя soapUI, я отправляю запрос, который начинается с:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" ...
и получить ответ, который начинается с:
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" ...
Я знаю, что служба получает информацию, потому что последующие процессы работают. Однако мой тестовый шаг soapUI терпит неудачу. Он имеет два активных утверждения: «Ответ SOAP» и «Не ошибка SOAP». Маркер сбоя находится рядом с «ответом SOAP» со следующим сообщением:
строка -1: Element Envelope@http://www.w3.org/2003/05/soap-envelope не является допустимым Envelope@http://schemas.xmlsoap.org/soap/envelope/ документ или допустимая замена.
Я пробовал смешивать и сопоставлять префиксы пространства имен и URL-адреса схемы. Изменение префиксов, кажется, не имеет никакого эффекта; изменение URL вызывает ошибку VersionMismatch
. Я также пытался использовать группу замещения, но это не кажется законным.