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

Execute isto antes de invocar a operación no mesmo serviceClient. Para un stub xerado, obtéñao con _getServiceClient(). Reutilizar as Options existentes conserva a configuración de punto de conexión e de operación que un obxecto baleiro novo podería descartar.

Isto usa org.apache.axis2.transport.http.HttpTransportProperties.ProxyProperties de Axis2 1.8.x. Substitúa o host do proxy e o porto enteiro; para unha proba de servizo público permitida, escolla un candidato HTTP da lista de proxies HTTP. Para a autenticación, o mesmo obxecto expón setUserName e setPassWord; proporciónaos desde a configuración de credenciais da aplicación e non desde a conta do servizo SOAP.

A propiedade HTTPConstants.PROXY en tempo de execución substitúe os valores predeterminados de proxy do despregamento en axis2.xml, o que a fai axeitada para unha ruta deliberadamente distinta nun cliente.

Axuste a API e o emisor HTTP á aplicación. A documentación máis recente do transporte de Axis2 describe un emisor HttpClient 5; esas importacións non substitúen esta interface 1.8.x. O transporte elixido tamén debe admitir o esquema de autenticación que esixe o proxy.

Artigos relacionados