Options options = serviceClient.getOptions();
HttpTransportProperties.ProxyProperties proxy =
    new HttpTransportProperties.ProxyProperties();
proxy.setProxyName("proxy.example");
proxy.setProxyPort(8080);
options.setProperty(HTTPConstants.PROXY, proxy);

Выполните это перед вызовом операции на том же serviceClient. Для сгенерированного stub получите его с помощью _getServiceClient(). Повторное использование существующих Options сохраняет настройки конечной точки и операции, которые новый пустой объект мог бы отбросить.

Здесь используется org.apache.axis2.transport.http.HttpTransportProperties.ProxyProperties из Axis2 1.8.x. Замените хост прокси и целочисленный порт; для разрешённого теста публичной службы выберите HTTP-кандидата из списка HTTP-прокси. Для аутентификации тот же объект предоставляет setUserName и setPassWord; передавайте их из конфигурации учётных данных приложения, а не из учётной записи службы SOAP.

Свойство HTTPConstants.PROXY времени выполнения переопределяет заданные по умолчанию параметры прокси развёртывания в axis2.xml, что делает его подходящим для намеренно другого маршрута у одного клиента.

Согласуйте API и HTTP-отправитель с приложением. Более новая документация транспорта Axis2 описывает отправитель HttpClient 5; эти импорты не заменяют данный интерфейс 1.8.x. Выбранный транспорт также должен поддерживать требуемую прокси схему аутентификации.

Похожие статьи