Клиент веб-службы - выбранное определение службы недействительно - PullRequest
3 голосов
/ 27 декабря 2011

Я строю веб-службу на затмении, используя среду выполнения Apache AXIS 2 Webservice, используя сервер Apache Tomcat (apache-tomcat-7.0.23), при запуске его на сервере Tomcat он успешно показывает, что веб-служба работает ...

Но при создании клиента Webservice для тестирования веб-службы и использовании URL-адреса wsdl в определении сервера (http://localhost:9090/Axis2WSTest/services/Converter?wsdl) это приводит к приведенной ниже ошибке и не позволяет мне создать клиент Webservice:

Недопустимое определение сервиса

Можете ли вы предложить мне ошибку и возможное решение для нее?

Ответы [ 6 ]

3 голосов
/ 23 ноября 2015

Проблема может заключаться в том, что вашему wsdl требуется http-аутентификация.Я получал ту же ошибку в eclipse, но это было потому, что сервер, к которому я подключался, нуждался в аутентификации и возвращал ошибку 401, поэтому Eclipse говорила, что это не wsdl.Eclipse, похоже, не имеет функции для запроса аутентификации, я смог сгенерировать клиента в NetBeans, используя тот же URL-адрес wsdl, потому что NetBeans знает, что запрашивать аутентификацию.

Генерация клиента из HTTP аутентифицированного* 1004 WSDL *

2 голосов
/ 07 января 2013

Я целый день искал ответ на этот вопрос, обычно localhost будет добавлен в ваш список обходных прокси, и, следовательно, вы не встретите ошибку.

Перейдите в windows -> preference--> general -> network-connection и проверьте, указан ли localhost в вашем списке proxybypass. Если вы пытаетесь получить доступ к внешней ссылке wsdl и у вас в какой-либо корпоративной сети есть брандмауэр proxy, вам нужно установить http proxy / https proxy.

0 голосов
/ 10 января 2019

У меня была такая же проблема, и я смог создать заглушки, используя soapUI . Пожалуйста, следуйте этому сообщению . Который содержит СОЗДАНИЕ КОДА JAVA КЛИЕНТА ДЛЯ WSDL С ИСПОЛЬЗОВАНИЕМ SOAP UI - AXIS2 WSDL2JAVA . Перед этим скачайте двоичный файл apache axis2 из здесь и распакуйте его.

0 голосов
/ 27 июня 2018

У меня была точно такая же ситуация. У меня сработало следующее:

Я получил ответ от ответа rdp - «Попробуйте заменить localhost фактическим IP-адресом. Я столкнулся с той же проблемой, и у меня это сработало»

Использование IP не работает для меня. Что сработало для меня:

Вместо - http://servername/SomeWebService/Service.asmx?WSDL

установка полного доменного имени для имени сервера. Например -

http://servername.my.company.com/SomeWebService/Service.asmx?WSDL

0 голосов
/ 11 февраля 2013

Попробуйте заменить localhost фактическим IP-адресом.Я столкнулся с той же проблемой, и у меня так получилось

0 голосов
/ 27 декабря 2011

Это , как вы пытаетесь создать заглушку клиента?Если да, просто создайте java-проект в eclipse, нажмите на него, затем нажмите Ctrl + N, выберите клиент веб-службы и введите свой wsdl url.(убедитесь, что вы получили доступ к URL-адресу wsdl, просто указав его в браузере).

...