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

Ejecute esto antes de invocar la operación en el mismo serviceClient. Para un stub generado, obténgalo con _getServiceClient(). Reutilizar sus Options existentes conserva la configuración de punto de conexión y de operación que un objeto vacío nuevo podría descartar.

Esto utiliza org.apache.axis2.transport.http.HttpTransportProperties.ProxyProperties de Axis2 1.8.x. Sustituya el host del proxy y el puerto entero; para una prueba de servicio público permitida, elija un candidato HTTP de la lista de proxies HTTP. Para la autenticación, el mismo objeto expone setUserName y setPassWord; proporciónelos desde la configuración de credenciales de la aplicación y no desde la cuenta del servicio SOAP.

La propiedad HTTPConstants.PROXY en tiempo de ejecución anula los valores predeterminados de proxy del despliegue en axis2.xml, lo que la hace adecuada para una ruta deliberadamente distinta en un cliente.

Ajuste la API y el emisor HTTP a la aplicación. La documentación más reciente del transporte de Axis2 describe un emisor HttpClient 5; esas importaciones no sustituyen esta interfaz 1.8.x. El transporte elegido también debe admitir el esquema de autenticación que exige el proxy.

Artículos relacionados