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);

ခေါ်ဆိုမှုများမတိုင်မီ ဤပို့သူကို လက်ရှိ template တွင် အသုံးပြုပြီး ဝန်ဆောင်မှု URI၊ marshaller နှင့် အခြားဆက်တင်များကို ထိန်းသိမ်းပါ။ ၎င်းသည် Apache HttpClient 5 ဖြင့် Spring-WS 4.1.0 ဖြစ်သည်။ နမူနာပုံစံသည် ပရောက်စီစစ်ဆေးမှုမပါဘဲ ခွင့်ပြုထားသော အများပြည်သူ SOAP ဝန်ဆောင်မှုကို ပစ်မှတ်ထားလျှင် HTTP ပရောက်စီစာရင်းမှ HTTP လိပ်စာသည် စိတ်ကြိုက်ပြင်ဆင်သူ၏ ပရောက်စီကို ဖြည့်နိုင်သည်။

withDefaults သည် Apache က HTTP ဘောင်ကို မဖန်တီးမီ SOAP ပေးသော Content-Length နှင့် Transfer-Encoding ကို ဖယ်ရှားသည့် ကြားဖြတ်ကိရိယာကို ထိန်းသိမ်းထားသည်။ ထိုနေရာတွင် ပရောက်စီ စိတ်ကြိုက်ပြင်ဆင်မှု ထည့်ခြင်းက ထိုပေါင်းစပ်မှုကို ရိုးရိုးကလိုင်းဖြင့် အစားထိုးခြင်းကို ရှောင်ရှားစေသည်။ သီးခြားတည်ဆောက်ထားသော Apache ကလိုင်းအတွက် Spring-WS ၏ ခေါင်းစီးဖယ်ရှားသည့် ကြားဖြတ်ကိရိယာကို ထိန်းသိမ်းပါ။

အသွင်းများနှင့် ပို့သူဖန်တီးမှုကို ကိုက်ညီစေပါ။ HttpComponentsMessageSender/org.apache.http သုံးသော ပုံစံဟောင်းများသည် Apache 4 ကို သုံးသည်၊ ဤ SimpleHttpComponents5MessageSender နှင့် HttpHost မျက်နှာပြင် မဟုတ်ပါ။

SOAP ကလိုင်း၏ သက်တမ်းတစ်လျှောက်လုံး လက်ဖြင့်ဖန်တီးထားသော ပို့သူကို ထိန်းသိမ်းပြီး နောက်ပိုင်းတွင် ပုံမှန်ဖျက်ဆီးမှုကို စီစဉ်ပါ။ Spring က စီမံသော bean သည် ကွန်တိန်နာ၏ ဘဝစက်ဝန်းကို အသုံးပြုနိုင်သည်။ အခြားပို့သူများကို ထိန်းသိမ်းသော အခြားပုံစံများသည် ၎င်းတို့၏ သယ်ယူပို့ဆောင်ရေး ဖွဲ့စည်းမှုကို ထိန်းသိမ်းထားသည်။

ဆက်စပ်ဆောင်းပါးများ