wsimport Finished. The SOAP Call Still Needs a Proxy.
Separate WSDL generation, runtime WSDL retrieval and SOAP invocation when configuring JAX-WS proxy access.
The WSDL downloaded, the Java classes were generated, and the first SOAP call still cannot get out of the network. The proxy option used by the generator belongs to the generator's operation.
Oracle's JDK 8 wsimport reference documents an HTTP-proxy option for that tool. It is not a portable instruction embedded into the resulting service classes. A later application can run in another JVM, under another account, with another JAX-WS implementation.
Find which request failed
| Stage | Process or component to inspect |
|---|---|
| Generate classes from WSDL and imports | The build tool or wsimport invocation |
| Read WSDL while constructing the service | The application's WSDL location and runtime client |
| Invoke the SOAP endpoint | The selected runtime transport and its proxy configuration |
The middle stage is easy to miss. A generated service may still refer to a remote WSDL. If the runtime needs to retrieve it during construction, configuring a port only afterward is too late for that earlier download. Packaging the intended description as an application resource can remove that retrieval dependency where the implementation supports it.
For the invocation, use the configuration documented by the deployed runtime. Some paths use JDK networking properties; others provide a vendor-specific client feature or HTTP transport. A class named ClientProxyFeature from one implementation is not automatically part of every JAX-WS provider.
Keep proxy credentials separate from SOAP service credentials. A successful WSDL download can even be anonymous while the operation endpoint requires a login, or vice versa.
Record the failed URL and the point at which construction or invocation stopped. That usually identifies where the missing setting belongs without another attempt to regenerate exactly the same classes.