Я пытаюсь добавить ссылку на веб-сервис в свое приложение в NetBeans 7.0.1. Веб-сервис Metro защищен с помощью SSL и размещен на том же компьютере, на котором я хочу запустить клиент. Я использую мастер «New Web Service Client», но когда я отправляю WSDL, защищенный SSL, я получаю следующее сообщение об ошибке:
Проблема с загрузкой файла wsdl или схемы.
Проверьте URL-адрес, настройки прокси-сервера или работает ли сервер.
URL: https://192.168.0.200:8181/MyApp/myService?wsdl
Руководство пользователя Metro - Для защиты примера клиентского приложения веб-службы (SSL) сообщает:
На шаге, в котором вы должны вырезать и вставить URL-адрес веб-службы, которую клиент должен использовать в поле URL-адреса WSDL, введите https: // полное имя хоста: 8181 / CalculatorApplication / CalculatorWSService? wsdl (изменения выделены жирным шрифтом), чтобы указать, что этот клиент должен ссылаться на веб-службу, используя безопасный порт. При первом обращении к этой службе примите сертификат (s1as) при появлении запроса. Это сертификат сервера, который появляется для подтверждения его личности клиенту.
В некоторых случаях вы можете получить сообщение об ошибке, сообщающее, что URL https: // полностью определенное имя хоста: 8181 / CalculatorApplication / CalculatorWSService? Wsdl не может быть загружен. Тем не менее, это правильный URL, и он загружается при запуске службы. Поэтому, когда возникает эта ошибка, повторите шаги по созданию клиента веб-службы с использованием безопасного WSDL. Во второй раз создается ссылка на веб-службу, и вы можете продолжить создание клиента.
Независимо от того, сколько раз я пробую, я все равно получаю одно и то же сообщение об ошибке (прокси не установлены, и сервер работает с развернутыми службами). WSDL отображается в браузере после принятия сертификата. Если я введу базовый URL-адрес WSDL (без HTTPS), мастер примет его и сгенерирует клиента. Что мне нужно сделать, чтобы получить эту работу?
UPDATE
То же самое применимо, если я запускаю клиент и сервис на разных машинах. Я использую сертификат разработки по умолчанию. Выход ретривера:
Ошибка: произошла ошибка ввода / вывода. sun.security.validator.ValidatorException: сбой построения пути PKIX: sun.security.provider.certpath.SunCertPathBuilderException: невозможно найти действительный путь сертификации к запрошенной цели`
Нужно ли устанавливать хранилище ключей и хранилище доверенных сертификатов в VMargs? Что делать, если я хочу, чтобы эта ссылка на службу содержалась в том же веб-приложении, которое содержит веб-службы?