Нужно ли включать пространства имен xml в команду svcutil.exe?

Мне нужно создать прокси-класс, чтобы я мог общаться с веб-службой Java (которую я не могу контролировать).

Предполагается, что веб-служба реализует стандарт каталога (CSW) OGC. Однако в wsdl НЕТ включений или импортов, просто ссылающихся на пространство имен в верхней части wsdl, например:

<?xml version="1.0" encoding="UTF-8"?>
<wsd:definitions xmlns:wsd="http://schemas.xmlsoap.org/wsdl" xmlns:csw="http://www.opengis.net/cat/csw/2.0.2" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime" xmlns:ows="http://www.opengis.net/ows" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap" xmlns:tns="http://www.mda.ca/hma/wsdl1.1" xmlns:wrs="http://www.opengis.net/cat/wrs/1.0" xmlns:xs="http://www.w3.org/2001/XMLSchema" ...

Итак, мой вопрос из двух частей:

  1. Достаточно ли этих тегов xmlns для создания прокси? (я бы подумал, что не потому, что я думаю, что это просто «подсказки», а даже не правильное или действительное местоположение любых файлов xsd)
  2. Если да, то должен ли я включать их в свою команду svcutil, например:

svcutil http://wsdllocation.com/thewsdl.wsdl http://www.opengis.net/cat /csw/2.0.2 ...

Моя проблема в том, что я не могу создать прокси-класс из этого wsdl. Я попытался добавить «всех» в свой каталог «c:/windows/temp/» с правами на изменение. Я попытался напрямую вызвать wsdl с помощью svcutil. Я попытался загрузить wsdl вместе со всеми файлами схемы OGC и включить их все с помощью моей команды svcutil, но все равно получаю следующую ошибку:

Generating files...
Warning: No code was generated.
If you were trying to generate a client, this could be because the

документы метаданных не содержали каких-либо допустимых кодов или потому, что все контракты/услуги были обнаружены в сборках /reference. Убедитесь, что вы передали все элементы инструменту.

Warning: If you would like to generate data contracts from schemas

обязательно используйте параметр /dataContractOnly.


person capdragon    schedule 03.03.2011    source источник


Ответы (1)


Нет, вам понадобятся фактические схемы, и на них действительно нужно будет ссылаться из раздела <types> WSDL.

Можете ли вы опубликовать URL-адрес WSDL? Я хотел бы увидеть, действительно ли это.

person John Saunders    schedule 03.03.2011
comment
пожалуйста, напишите мне по адресу ckrefft [at] rsmas.miami.edu. Я отправлю вам скачанный wsdl в zip-архиве. Дело в том, что wsdl доступен только через определенные IP-адреса (защищенные брандмауэром). Я ценю это. - person capdragon; 03.03.2011
comment
@John: я обещаю не писать вам напрямую по электронной почте в другое время, кроме как отправить вам файл wsdl. (если вы меня об этом не попросите). Даю слово, что больше не буду беспокоить вас вопросами. Они все пройдут через этот сайт, если что. - person capdragon; 04.03.2011
comment
@John: Что ж, я должен дать вам ответ, поскольку я думаю, что вы ответили на него. Но я все равно был бы признателен, если бы вы взглянули на wsdl, чтобы убедиться, что он действителен. - person capdragon; 04.03.2011
comment
@cap: я еще не получил WSDL. - person John Saunders; 04.03.2011
comment
@capdragon: это весь WSDL? Раздела <wsdl:types> нет, кроме закомментированного. Все, что нужно сделать владельцам, это открыть файл в XMLSpy, чтобы убедиться, что он недействителен. - person John Saunders; 04.03.2011
comment
+2 за то, что взглянул на wsdl. Да, это весь WSDL. Если я добавлю ‹wsdl:types› в файлы схемы, которые я загрузил из органа по стандартизации, который они реализуют (OGC), я думаю, я должен быть на правильном пути? Я попробую. Спасибо за вашу помощь. - person capdragon; 07.03.2011