wsdl.exe приводит к тому, что «привязка SOAP 1.1 не найдена» - PullRequest
3 голосов
/ 30 октября 2008

Я пытаюсь реализовать веб-сервис HTML Parsing, как описано в главе 23 ASP.NET Unleashed (1-е изд.) И этой статьи MSDN . Все идет нормально! Тем не менее, я получаю раздражающее предупреждение при использовании wsdl.exe для создания класса:

Microsoft (R) Web Services Description Language Utility
[Microsoft (R) .NET Framework, Version 2.0.50727.3038]
Copyright (C) Microsoft Corporation. All rights reserved.

Warning: This web reference does not conform to WS-I Basic Profile v1.1.
SOAP 1.1 binding was not found: WS-I's Basic Profile 1.1 consists of 
implementation guidelines that recommend how a set of core Web services
specifications should be used together to develop interoperable Web 
services. For the 1.1 Profile, those specifications are SOAP 1.1, 
WSDL 1.1, UDDI 2.0, XML 1.0 and XML Schema.

For more details on the WS-I Basic Profile v1.1, see the specification
at http://www.ws-i.org/Profiles/BasicProfile-1.1.html.

Я бы хотел соответствовать спецификации, если это возможно. Я посмотрел на рекомендуемую страницу и нашел пару страниц на w3.org, но не нашел конкретного примера того, какие элементы xml мне нужно включить для соответствия.

Вместо публикации моего xml, я просто скажу, что wsdl примерно соответствует тому, что используется в статье MSDN (за исключением того, что я исправил неверный URL для XMLSchema на w3.org, добавив ".dtd").

Спасибо!

1 Ответ

6 голосов
/ 30 октября 2008

Wsdl.exe используется по умолчанию SOAP в качестве протокола для реализации и, следовательно, пытается проверить соответствие Основному профилю. В любом случае, wsdl.exe обрабатывает это и продолжает только с предупреждением. Если вы проверите файл MSDN , вы заметите, что привязка настроена на использование протокола HttpGet . Итак, если вы хотите подавить предупреждение, запустите

wsdl.exe /protocol:HttpGet <url or path> 

Однако полученный прокси-класс такой же, как и у предыдущего.

Примечание : вам не нужно исправлять любой URL, который определяет пространство имен, поскольку он используется не как URL, а как идентификатор. Хотя многие пространства имен выглядят как URL, им не обязательно указывать на реальные ресурсы в Интернете. Пространство имен http://www.w3.org/2001/XMLSchema определено W3C в Рекомендация схемы XML .

...