HttpComponents 5 ဖြင့် Spring-WS 4.1 ပရောက်စီကို ဖွဲ့စည်းပါ
Spring-WS 4.1 ၏ HttpComponents5 ကလိုင်းဖက်ထရီကို စိတ်ကြိုက်ပြင်ဆင်ပြီး ရလာသော ပို့သူကို WebServiceTemplate သို့ ချိတ်ဆက်ပါ။
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 သည် ကွန်တိန်နာ၏ ဘဝစက်ဝန်းကို အသုံးပြုနိုင်သည်။ အခြားပို့သူများကို ထိန်းသိမ်းသော အခြားပုံစံများသည် ၎င်းတို့၏ သယ်ယူပို့ဆောင်ရေး ဖွဲ့စည်းမှုကို ထိန်းသိမ်းထားသည်။