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 operação no mesmo serviceClient. Para um stub gerado, obtenha-o com _getServiceClient(). Reutilizar as Options existentes preserva as configurações de endpoint e de operação que um novo objeto vazio poderia descartar.

Isto usa org.apache.axis2.transport.http.HttpTransportProperties.ProxyProperties do Axis2 1.8.x. Substitua o host do proxy e a porta inteira; para um teste de serviço público permitido, escolha um candidato HTTP na lista de proxies HTTP. Para autenticação, o mesmo objeto expõe setUserName e setPassWord; forneça-os a partir da configuração de credenciais da aplicação, não da conta do serviço SOAP.

A propriedade HTTPConstants.PROXY em tempo de execução substitui os padrões de proxy da implantação em axis2.xml, tornando-a adequada para uma rota deliberadamente diferente num único cliente.

Alinhe a API e o remetente HTTP com a aplicação. A documentação mais recente do transporte do Axis2 descreve um remetente HttpClient 5; essas importações não substituem esta interface 1.8.x. O transporte escolhido também deve suportar o esquema de autenticação exigido pelo proxy.

Artigos relacionados