Framvirkur proxy fyrir WebServiceTemplate í Spring
Tengdu proxy-skulstilltan HttpClient 5 flutning við WebServiceTemplate og haltu nauðsynlega hausastilli SOAP-sendandans.
WebServiceTemplate sendir í gegnum WebServiceMessageSender sinn. Stilltu HTTP-biðlarann hjá þeim sendanda þegar SOAP-áfangastaðurinn krefst framvirks proxy.
Fyrir Spring WS 4.1 með Apache HttpClient 5 tiltækan:
var http = org.apache.hc.client5.http.impl.classic.HttpClients.custom()
.setProxy(new org.apache.hc.core5.http.HttpHost(
"http", "proxy.example", 8080))
.addRequestInterceptorFirst(
new org.springframework.ws.transport.http
.HttpComponents5ClientFactory.RemoveSoapHeadersInterceptor())
.build();
var sender = new org.springframework.ws.transport.http
.HttpComponents5MessageSender(http);
webServiceTemplate.setMessageSender(sender);webServiceTemplate er fyrirliggjandi sniðmát forritsins. SOAP-þjónustu-URI þess er áfram áfangastaðurinn; HTTP-biðlarinn heldur milliliðnum, sem getur verið opinber frambjóðandi úr HTTP-proxylistanum þegar sú leið er leyfð.
Smíði sérsniðins biðlara bætir ekki við venjulegum hausastilli sendandans. Haltu honum þegar biðlarinn er settur saman: hann fjarlægir flutningshausa sem SOAP leggur til og Apache-vinnsla beiðna stýrir. Sendandi byggður í gegnum sjálfgefin gildi biðlaraversmiðjunnar er önnur byggingarleið sem varðveitir þessa samþættingu.
Bættu nauðsynlegum proxy-skírteinum og tímatakmörkum við sérsniðna biðlarann í gegnum eigin studdu viðmót hans. Setter-aðferðir sendandans koma ekki í stað þess að stilla biðlara sem þegar er veittur.
Haltu biðlaranum fyrir vinnuálag sniðmátsins og lokaðu eigin auðlindum við slokknun. Þetta dæmi notar HttpClient 5 sendandann; Spring WS-dæmi sem flytja inn org.apache.http lýsa annarri biðlarakynslóð.