Mae WebServiceTemplate yn anfon drwy ei WebServiceMessageSender. Ffurfweddwch glient HTTP yr anfonydd hwnnw pan fo'r gyrchfan SOAP yn gofyn am ddirprwy blaen.

Ar gyfer Spring WS 4.1 gyda Apache HttpClient 5 ar gael:

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 yw templed presennol y rhaglen. Mae ei SOAP service URI yn aros yn gyrchfan; mae'r cleient HTTP yn dal y cyfryngwr, a allai fod yn ymgeisydd cyhoeddus o restr dirprwy HTTP pan ganiateir y llwybr hwnnw.

Nid yw'r constructor cleient addasedig yn ychwanegu rhyng-gipiwr pennawd arferol yr anfonydd. Cadwch ef wrth gynnull y cleient: mae'n tynnu pennawdau cludo a ddarperir gan SOAP y mae prosesu ceisiadau Apache yn eu rheoli. Mae anfonydd a adeiladir drwy ragosodiadau'r ffatri gleientiaid yn llwybr adeiladu arall sy'n cadw'r integreiddiad hwn.

Ychwanegwch y tystlythyrau dirprwy a'r terfynau amser gofynnol ar y cleient addasedig drwy ei ryngwynebau cefnogol ei hun. Nid yw dulliau gosod yr anfonydd yn cymryd lle ffurfweddu cleient a ddarparwyd yn barod.

Cadwch y cleient ar gyfer llwyth gwaith y templed a chaewch adnoddau sy'n eiddo wrth gau. Mae'r enghraifft hon yn defnyddio anfonydd HttpClient 5; mae enghreifftiau Spring WS sy'n mewnforio org.apache.http yn disgrifio cenhedlaeth arall o gleientiaid.

Erthyglau cysylltiedig