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-पुरवलेले ट्रान्सपोर्ट हेडर काढतो. क्लायंट फॅक्टरीच्या डीफॉल्टद्वारे तयार केलेला प्रेषक हे एकत्रीकरण टिकवणारा दुसरा बांधणी मार्ग आहे.

आवश्यक प्रॉक्सी क्रेडेन्शियल्स आणि कालमर्यादा कस्टम क्लायंटवर त्याच्या स्वतःच्या समर्थित इंटरफेसद्वारे जोडा. प्रेषकाच्या सेटर पद्धती आधीच दिलेल्या क्लायंटला कॉन्फिगर करण्याचा पर्याय नाहीत.

टेम्पलेटच्या कार्यभारासाठी क्लायंट टिकवून ठेवा आणि बंद करताना मालकीची संसाधने बंद करा. हे उदाहरण HttpClient 5 प्रेषक वापरते; org.apache.http आयात करणारी Spring WS उदाहरणे दुसऱ्या क्लायंट पिढीचे वर्णन करतात.

संबंधित लेख