import org.apache.hc.core5.http.HttpHost;
import org.springframework.ws.transport.http.HttpComponents5ClientFactory;
import org.springframework.ws.transport.http.SimpleHttpComponents5MessageSender;

var factory = HttpComponents5ClientFactory.withDefaults();
factory.addClientBuilderCustomizer(builder ->
    builder.setProxy(new HttpHost("http", "proxy.example", 8080)));

var sender = new SimpleHttpComponents5MessageSender(factory);
template.setMessageSender(sender);

Pas dizze ferstjoerder foar oproppen ta op de besteande template en behâld de tsjinst-URI, marshaller en oare ynstellingen. Dit is Spring-WS 4.1.0 mei Apache HttpClient 5. As it sjabloan in tastiene iepenbiere SOAP-tsjinst sûnder proxy-autentikaasje rjochtet, kin in HTTP-adres út 'e HTTP-proxylist de proxy fan 'e oanpasser folje.

withDefaults behâldt de ûnderskepper dy't de troch SOAP levere Content-Length en Transfer-Encoding fuorthellet foardat Apache de HTTP-raming makket. Troch dêr de proxy-oanpasser ta te foegjen, wurdt dy yntegraasje net ferfongen troch in neaken klant. Foar in apart boud Apache-klant behâld de koptekst-ferwiderjende ûnderskepper fan Spring-WS.

Lit de imports en it meitsjen fan de ferstjoerder byinoar passe. Aldere foarbylden mei HttpComponentsMessageSender/org.apache.http brûke Apache 4, net dizze SimpleHttpComponents5MessageSender en HttpHost-ynterface.

Behâld in mei de hân makke ferstjoerder foar de hiele libbensdoer fan 'e SOAP-klant en regel dêrnei de normale ferneatiging. In troch Spring beheard bean kin de libbenssyklus fan 'e container brûke. Oare sjabloanen dy't oare ferstjoerders behâlde, hâlde har eigen ferfierskonfiguraasje.

Relatearre artikelen