Vælg en proxy til én WebSphere 8.5.5 JAX-WS-klient
Anvend WebSpheres dokumenterede proxyegenskaber på JAX-WS-klientens anmodningskontekst i stedet for at ændre routing for hele JVM'en.
For WebSphere Application Server 8.5.5 JAX-WS skal du kontrollere to omkringliggende styringer, før du stoler på en adresse i klientens anmodningskontekst. IBMs egenskab på JVM-niveau com.ibm.ws.websvcs.transport.enableProxyTunnel er false som standard; en adresse pr. klient aktiverer ikke tunnellering. HTTP-transportværdier i et politikssæt tilsidesætter også programmatiske værdier, og de tilsidesætter JVM-systemegenskaber.
For den valgte eksisterende port dokumenterer IBM denne opsætning pr. klient før kaldet:
import javax.xml.ws.BindingProvider;
BindingProvider binding = (BindingProvider) servicePort;
binding.getRequestContext().put("https.proxyHost", "proxy.example");
binding.getRequestContext().put("https.proxyPort", "8080");HTTPS-nøglerne gælder for HTTPS-endepunkter; brug de tilsvarende IBM HTTP-nøgler til HTTP. Et tilladt offentligt SOAP-endepunkt kan bruge en HTTP-adresse fra HTTP-proxylisten, først når den gældende politik og tunnelleringstilladelser tillader det, og når der ikke er konfigureret nogen proxykonto på disse niveauer. Proxygodkendelse har separate HTTP/HTTPS proxyUser- og proxyPassword-egenskaber, uafhængige af SOAP-tjenestens legitimationsoplysninger.
Dette er WebSphere-udvidelser. Et BindingProvider-map i Metro, CXF eller en anden implementering gør ikke disse strenge flytbare.
Hold forskellige samtidige ruter på korrekt konfigurerede klientobjekter i stedet for at omskrive en delt portkontekst, mens kald kører. Det afgrænser adressen til den faktiske klient uden at behandle alle dens omkringliggende JVM-styringer som klientlokale.