WebServiceTemplate өзінің WebServiceMessageSender арқылы жібереді. SOAP межелісі алдыңғы проксиді талап еткенде сол жіберушінің HTTP клиентін конфигурациялаңыз.

Apache HttpClient 5 қолжетімді Spring WS 4.1 үшін:

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 — қолданбаның бар үлгісі. Оның SOAP қызметінің URI межелі болып қалады; HTTP клиент делдалды ұстайды, ол маршрут рұқсат етілгенде HTTP прокси тізімінен ашық үміткер болуы мүмкін.

Реттелген клиенттің конструкторы жіберушінің әдеттегі тақырып интерсепторын қоспайды. Клиентті құрастырғанда оны сақтаңыз: ол Apache сұрау өңдеуі басқаратын SOAP ұсынған тасымал тақырыптарын жояды. Клиент фабрикасының әдепкі параметрлері арқылы құрылған жіберуші осы интеграцияны сақтайтын тағы бір құрастыру жолы.

Қажетті прокси тіркелгі деректері мен тайм-ауттарды реттелген клиентке оның өзінің қолдау көрсетілетін интерфейстері арқылы қосыңыз. Жіберушінің setter әдістері бұрыннан берілген клиентті конфигурациялауды алмастырмайды.

Клиентті үлгінің жүктемесі үшін сақтаңыз және өшіру кезінде меншікті ресурстарды жабыңыз. Бұл мысал HttpClient 5 жіберушісін пайдаланады; org.apache.http импорттайтын Spring WS мысалдары клиенттің басқа буынын сипаттайды.

Қатысты мақалалар