У меня проблемы с подключением к Java WS. Я использую привязку "wsHttpBinding" с клиентскими сертификатами для аутентификации, кодировка сообщений установлена "Текст", .NET framework 4.0. Сторона сервера - это Java, и я не могу ее контролировать. Соединение проксируется через Fiddler (именно так я вижу запросы по сети, гораздо удобнее, чем отслеживание "System.Net").
Я получаю следующее исключение:
Тип контента application / xop + xml; type = "application / soap + xml" ответного сообщения не соответствует типу содержимого привязки (application / soap + xml; charset = utf-8).
Если я изменю кодировку сообщения на «Mtom», то исключение изменится:
Тип контента application / xop + xml; type = "application / soap + xml" ответного сообщения не соответствует типу содержимого привязки (multipart / related; type = "application / xop + xml").
Сервер принимает для запроса кодировки сообщений «Text» и «Mtom», и ответ всегда один и тот же. Это необработанный ответ, который я получаю от сервера:
HTTP/1.1 200 OK
X-Backside-Transport: OK OK
Connection: Keep-Alive
X-Powered-By: Servlet/3.0
SOAPAction: ""
Content-Type: application/xop+xml; type="application/soap+xml"
Content-Language: en-US
Date: Thu, 25 Jul 2013 13:05:09 GMT
Content-Length: 628
<?xml version="1.0" encoding="UTF-8"?>
<env:Envelope ... </env:Envelope>
Из всех документов, которые я читал, возвращаемый ответ находится где-то между обычным сообщением SOAP и сообщением MTOM. Я говорю это, потому что каждый пример, который я видел, говорит о том, что запрос и ответ MTOM используют MIME в качестве конверта для связи: обычное сообщение SOAP заключено в пакет XOP, а затем это сообщение XOP заключено в MIME. Даже в рекомендации W3C для пакетов XOP используется MIME: W3C: упаковка, оптимизированная для двоичного кода XML. Выдержка из этой ссылки:
Content-Type: Multipart/Related;boundary=...
Если я попытаюсь вызвать веб-службу с помощью инструмента «soapUI» (написанного на Java, доступного на «www.soapui.org»), вызов службы будет успешно выполнен, и ответ будет проанализирован без каких-либо проблем.
К вашему сведению, это кросс-сообщение от MSDN WCF forum., но ответов пока нет.
Любая идея приветствуется, заранее спасибо,
Алекс