2015-01-15 3 views
0

Я новичок в веб-сервисы и у меня возникают проблемы непосредственно модификации WSDL для возврата пользовательского типа вместо строкиWSDL тип ответа на объект

это WSDL ->http://www.webservicex.net/globalweather.asmx?WSDL

это возможно отредактировать wsdl, чтобы вернуть пользовательский тип в качестве ответа, не зная, как веб-сервис определен на удаленной стороне?

ответ

1

WSDL - это контракт, который предоставляет сервис, который описывает, как взаимодействовать с сервисом. Это делается WSDL, описывающим, как вызвать услугу и какие данные отправлять и что вы получите. Вы не можете изменить WSDL, который не принадлежит вам. После развертывания и запуска WSDL это, по сути, договор только между поставщиками услуг и потребителями о том, как все будет работать.

Изменение WSDL означает, что вам, вероятно, потребуется внести изменения в код службы. В вашем примере WSDL представляется сервисом, в котором у вас нет контроля исходного кода, и, следовательно, вы не можете изменить WSDL и ожидать, что ваш клиент будет работать.

Существует еще один способ приблизиться к этому. Вы можете создать прокси-сервер, который использует исходный веб-сервис, а затем переводит ответ на вашу новую структуру WSDL. Затем клиент будет вызывать ваш веб-сервис, который будет вызывать исходную услугу, и возвращает ответ на то, что ваш WSDL определяет.

Смежные вопросы