Гость
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Binding mismatch ? / 9 сообщений из 9, страница 1 из 1
16.08.2013, 07:02
    #38368398
МСильвер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Binding mismatch ?
Есть некий WCF сервис, который может посылать данные (тип файла, время и файл xml), написан на Java

У сервиса есть WSDL файл, который выслал мне админ сервиса, по этому файлу я построил свой сервис на .net , который может принимать эти данные.

Все хорошо, все работает когда тестирую в SOAP UI, но когда рабочий сервис посылает мне данные , то получает отлуп:

(415)Cannot process the message because the content type 'multipart/related; type="text/xml"; start="<A8AA817713DC6648E12D33BD3E93899A>"; boundary="----=_Part_227925_9361419.1376343061191"' was not the expected type 'text/xml; charset=utf-8'.

Когда начал гуглить эту ошибку, понял, что скорее всего, не совпадают binding, но еще может не совпадать тип сообщений, поменял на messageEncoding="Mtom"

Ошибка стала другой:
Error creating a reader for the MTOM message / MTOM messages must have type 'application/xop+xml'.

Мой сервис использует basicHttpBinding, что скорее всего, не поддерживается сервисом отправителем. Точно сказать не могу, так как на том конце сидит человек, который знает только как запустить отправку сообщений, но не как оно устроено.


Пример сообщения от сервисе отправителя из документации
Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
<soapenv:Envelope
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:comit-service=http://www.electricitywits.co.nz/ws/comit-service
xmlns:wsrm="http://docs.oasis-open.org/wsrm/2004/06/ws-reliability-1.1.xsd">

<soapenv:Header>
<wsrm:Request soapenv:actor="comit-service" soapenv:mustUnderstand="1">
<wsrm:ExpiryTime>2006-01-12T153405560</wsrm:ExpiryTime>
<wsrm:ReplyPattern>
<wsrm:Value>Response</wsrm:Value>
</wsrm:ReplyPattern>
<wsrm:AckRequested/>
<wsrm:DuplicateElimination/>
<wsrm:MessageId groupId="mid://91345.11528@electricitywits.co.nz"/>
</wsrm:Request>
</soapenv:Header>

<soapenv:Body>
<comit-service:message-details>
<message-type>five-min-prices</message-type>
<ftp-filename>5minprices_20060112153002.csv.gz</ftp-filename>
<message-format>xml</message-format>
</comit-service:message-details>
</soapenv:Body>

</soapenv:Envelope>



Еще из документации понятно, что они используют: WS-I Basic Profile 1.1


Пока собираюсь тестировать с wsHttpBinding, но если есть другие варианты и мысли, буду рад.
...
Рейтинг: 0 / 0
16.08.2013, 12:57
    #38368840
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Binding mismatch ?
МСильвер,

multipart/related; type="text/xml"
text/xml; charset=utf-8

похоже раз ница в этих двух строчках.
...
Рейтинг: 0 / 0
19.08.2013, 08:15
    #38370269
МСильвер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Binding mismatch ?
AlexeiK,

Это, конечно, очевидно, но что делать с этим, просто замена httpBinding на wsHttpBinding не помогла
...
Рейтинг: 0 / 0
19.08.2013, 13:33
    #38370640
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Binding mismatch ?
МСильвер,

так, задать входящий формат нету возможности?
...
Рейтинг: 0 / 0
19.08.2013, 13:33
    #38370641
AlexeiK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Binding mismatch ?
входящий формат у принимающий стороны я имею ввиду.
...
Рейтинг: 0 / 0
20.08.2013, 05:20
    #38371395
МСильвер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Binding mismatch ?
...
Рейтинг: 0 / 0
21.08.2013, 03:55
    #38372650
МСильвер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Binding mismatch ?
Сообщение в итоге состоит из 2х частей, первая обычный text, вторая часть - запакованный файл...


Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
------=_Part_24506_10788370.1377042063109
Content-Type: text/xml; charset=UTF-8
Content-Transfer-Encoding: binary
Content-Id: <B6575B8464CF6278EB11E1A96312BE55>

------=_Part_24506_10788370.1377042063109
Content-Type: application/x-gzip
Content-Transfer-Encoding: binary
Content-Id: <five-min-prices>
...
Рейтинг: 0 / 0
21.08.2013, 04:00
    #38372651
МСильвер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Binding mismatch ?
Задать входящий формат я могу какой угодно, только не знаю какой и как, все стандартные перепробовал
...
Рейтинг: 0 / 0
21.08.2013, 05:00
    #38372656
МСильвер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Binding mismatch ?
МСильверСообщение в итоге состоит из 2х частей, первая обычный text, вторая часть - запакованный файл...


Код: xml
1.
2.
3.
4.
5.
6.
7.
8.
9.
------=_Part_24506_10788370.1377042063109
Content-Type: text/xml; charset=UTF-8
Content-Transfer-Encoding: binary
Content-Id: <B6575B8464CF6278EB11E1A96312BE55>

------=_Part_24506_10788370.1377042063109
Content-Type: application/x-gzip
Content-Transfer-Encoding: binary
Content-Id: <five-min-prices>



т.е. по сути это MTOM, но когда выставляешь кодировку, например:
Код: xml
1.
<mtomMessageEncoding messageVersion="Soap11" />



Получаешь
Error creating a reader for the MTOM message. MTOM messages must have type 'application/xop+xml'.
...
Рейтинг: 0 / 0
Форумы / WCF, Web Services, Remoting [игнор отключен] [закрыт для гостей] / Binding mismatch ? / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]