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 مىساللىرى باشقا بىر خېرىدار ئەۋلادىنى تەسۋىرلەيدۇ.

مۇناسىۋەتلىك ماقالىلەر