wsimport er færdig. SOAP-kaldet kræver stadig en proxy.
Adskil WSDL-generering, WSDL-hentning under kørsel og SOAP-kald, når JAX-WS-proxyadgang konfigureres.
WSDL'en blev hentet, Java-klasserne blev genereret, og det første SOAP-kald kan stadig ikke komme ud af netværket. Den proxyindstilling, generatoren bruger, hører til generatorens egen kørsel.
Oracles JDK 8-reference for wsimport beskriver en HTTP-proxyindstilling til værktøjet. Den er ikke en flytbar instruktion, der indlejres i de genererede serviceklasser. En senere applikation kan køre i en anden JVM, under en anden konto og med en anden JAX-WS-implementering.
Find ud af, hvilken anmodning der fejlede
| Trin | Proces eller komponent, der skal undersøges |
|---|---|
| Generer klasser ud fra WSDL og imports | Bygværktøjet eller wsimport-kaldet |
| Læs WSDL, mens servicen opbygges | Applikationens WSDL-placering og runtime-klienten |
| Kald SOAP-endepunktet | Den valgte runtime-transport og dens proxykonfiguration |
Det midterste trin er let at overse. En genereret service kan stadig henvise til en fjern WSDL. Hvis runtime-miljøet skal hente den under opbygningen, er det for sent at konfigurere en port bagefter for den tidligere hentning. Hvis den tilsigtede beskrivelse pakkes som en applikationsressource, kan den hentningsafhængighed fjernes, hvor implementeringen understøtter det.
En klasse ved navn ClientProxyFeature fra én implementering er ikke automatisk en del af enhver JAX-WS-udbyder.
Hold proxy-legitimationsoplysninger adskilt fra legitimationsoplysningerne til SOAP-servicen. En vellykket WSDL-hentning kan endda være anonym, mens operationens endepunkt kræver login, eller omvendt.
Notér den fejlende URL og det punkt, hvor opbygningen eller kaldet stoppede. Det viser som regel, hvor den manglende indstilling hører til, uden endnu et forsøg på at generere præcis de samme klasser.