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);

Rakendage see saatja enne kutseid olemasolevale template-le, säilitades teenuse URI, marshalleri ja muud seaded. See on Spring-WS 4.1.0 koos Apache HttpClient 5-ga. Kui mall sihib lubatud avalikku SOAP-teenust ilma puhverserveri autentimiseta, saab HTTP puhverserverite loendist pärit HTTP-aadress kohandaja puhverserveri täita.

withDefaults säilitab põimiku, mis eemaldab SOAP-i antud Content-Length ja Transfer-Encoding enne, kui Apache loob HTTP raamistuse. Puhverserveri kohandaja lisamine sinna hoiab ära selle integratsiooni asendamise palja kliendiga. Eraldi loodud Apache kliendi puhul säilitage Spring-WS-i päiste eemaldav põimik.

Sovitage importe ja saatja loomist. Vanemad näited HttpComponentsMessageSender/org.apache.http-ga kasutavad Apache 4-t, mitte seda SimpleHttpComponents5MessageSender ja HttpHost-liidest.

Hoidke käsitsi loodud saatjat kogu SOAP-kliendi eluea jooksul ja korraldage pärast seda tavapärane hävitamine. Springi hallatav bean saab kasutada konteineri elutsüklit. Teised mallid, mis hoiavad teisi saatjaid, säilitavad oma transporthäälestuse.

Seotud artiklid