Так что у меня есть небольшая проблема, которую я пытаюсь решить. Возможно, какой-нибудь Flex-гуру мог бы помочь?
У меня есть экземпляр WebService, который пытается загрузить файл WSDL с нашего сервера приложений JBoss. Если я сделаю что-то вроде этого:
webService = new WebService();
webService.destination = WebService.DEFAULT_DESTINATION_HTTP;
webService.wsdl = "http://<removed>/services/ApiService?wsdl";
webService.loadWSDL();
все отлично работает. WSDL успешно загружен, и приложение может вызывать методы для веб-службы.
Проблема в том, когда мне нужно добавить HTTP-аутентификацию в смесь:
webService.setCredentials(userName, password);
эта строка в итоге выдает ошибку, утверждающую, что учетные данные поддерживаются только по HTTPS. Хорошо, честно говоря, я все равно хочу использовать безопасный HTTPS!
Итак, я попытался изменить это до этого ...
webService = new WebService();
webService.destination = WebService.DEFAULT_DESTINATION_HTTPS;
webService.wsdl = "https://<removed>/services/ApiService?wsdl";
webService.setCredentials(userName, password);
webService.loadWSDL();
и теперь экземпляр WebService не может загрузить WSDL. Получена ошибка:
[FaultEvent fault = [RPC Fault faultString = "ошибка HTTP-запроса" faultCode = "Server.Error.Request" faultDetail = "Невозможно загрузить WSDL. Если в данный момент он подключен, проверьте URI и / или формат WSDL ( /services/ApiService?wsdl" rel="nofollow noreferrer">https:///services/ApiService?wsdl)"] messageId = "6905CC5B-5317-C4B3-2D12-84647EE648A7" type = "fault" bubbles = false отменить = true eventPhase = 2]
Я могу нормально получить этот URI в браузере, и он возвращает WSDL, как и ожидалось.
Я не парень Flex (учусь), а разработчик Java. Я опробую Flex в качестве потенциального клиента для нашей системы, но это вызвало у меня сегодня много горя. У Google, кажется, нет быстрых ответов для меня, и я немного озадачен.
Первый вопрос о StackOverflow, так что, надеюсь, он где-нибудь укусит и поможет другим бедным Java-разработчикам задержаться в офисе вечером в пятницу: -)