Stilltu Spring-WS 4.1 proxy með HttpComponents 5
Sérsníddu HttpComponents5-biðlaraverksmiðju Spring-WS 4.1 og tengdu sendandann sem verður til við WebServiceTemplate.
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);Beittu þessum sendanda á núverandi template fyrir köll og haltu URI þjónustunnar, marshaller og öðrum stillingum. Þetta er Spring-WS 4.1.0 með Apache HttpClient 5. Ef sniðmátið miðar á leyfilega opinbera SOAP-þjónustu án proxy-auðkenningar getur HTTP-vistfang úr HTTP-proxylistanum fyllt proxy sérsniðarans.
withDefaults heldur milliföngnum sem fjarlægir Content-Length og Transfer-Encoding sem SOAP leggur til áður en Apache myndar HTTP-rammann. Að bæta proxy-sniðaranum þar við kemur í veg fyrir að sú samþætting verði skipt út fyrir beran biðlara. Fyrir sérstaklega byggðan Apache-biðlara haltu milliföngnum sem fjarlægir hausa Spring-WS.
Láttu innflutning og sendandagerð passa saman. Eldri dæmi með HttpComponentsMessageSender/org.apache.http nota Apache 4, ekki þennan SimpleHttpComponents5MessageSender og HttpHost-viðmótið.
Haltu sendanda sem búið er til handvirkt í allan líftíma SOAP-biðlarans og skipuleggðu eðlilega eyðingu hans eftir það. Bean sem Spring stjórnar getur notað lífsferil geymsilsins. Aðrar sniðmátur sem halda öðrum sendendum varðveita eigin flutningsstillingar.