El WSDL se descargó, las clases Java se generaron y la primera llamada SOAP sigue sin poder salir de la red. La opción de proxy que usa el generador pertenece a la ejecución del propio generador.

La referencia de wsimport de Oracle JDK 8 documenta una opción de proxy HTTP para esa herramienta. No es una instrucción portátil incrustada en las clases de servicio resultantes. Una aplicación posterior puede ejecutarse en otra JVM, con otra cuenta y con otra implementación de JAX-WS.

Identifique qué solicitud falló

EtapaProceso o componente que inspeccionar
Generar clases a partir del WSDL y las importacionesLa herramienta de compilación o la invocación de wsimport
Leer el WSDL al construir el servicioLa ubicación del WSDL de la aplicación y el cliente en tiempo de ejecución
Invocar el punto de conexión SOAPEl transporte elegido en tiempo de ejecución y su configuración de proxy

La etapa intermedia pasa fácilmente desapercibida. Un servicio generado puede seguir refiriéndose a un WSDL remoto. Si el entorno de ejecución debe obtenerlo durante la construcción, configurar un puerto solo después llega tarde para esa descarga anterior. Empaquetar la descripción prevista como recurso de la aplicación puede eliminar esa dependencia de obtención donde la implementación lo admita.

Una clase llamada ClientProxyFeature de una implementación no forma parte automáticamente de todos los proveedores JAX-WS.

Mantenga las credenciales del proxy separadas de las del servicio SOAP. Una descarga de WSDL correcta puede incluso ser anónima mientras el punto de conexión de la operación exige inicio de sesión, o al contrario.

Anote la URL que falló y el punto en el que se detuvieron la construcción o la invocación. Eso suele indicar dónde corresponde el ajuste que falta sin intentar generar de nuevo exactamente las mismas clases.

Artículos relacionados