WebSphere Application Server 8.5.5 JAX-WS के लिए, क्लाइंट के अनुरोध संदर्भ में दिए गए पते पर भरोसा करने से पहले दो आसपास के नियंत्रण जाँचें। IBM का JVM-स्तरीय गुण com.ibm.ws.websvcs.transport.enableProxyTunnel डिफ़ॉल्ट रूप से false है; प्रति-क्लाइंट पता टनलिंग सक्षम नहीं करता। पॉलिसी सेट के HTTP ट्रांसपोर्ट मान प्रोग्रामेटिक मानों को भी ओवरराइड करते हैं, और वे JVM सिस्टम गुणों को ओवरराइड करते हैं।

चुने गए मौजूदा पोर्ट के लिए IBM कॉल से पहले यह प्रति-क्लाइंट सेटअप प्रलेखित करता है:

import javax.xml.ws.BindingProvider;

BindingProvider binding = (BindingProvider) servicePort;
binding.getRequestContext().put("https.proxyHost", "proxy.example");
binding.getRequestContext().put("https.proxyPort", "8080");

HTTPS कुंजियाँ HTTPS एंडपॉइंट पर लागू होती हैं; HTTP के लिए संगत IBM HTTP कुंजियाँ उपयोग करें। स्वीकृत सार्वजनिक SOAP एंडपॉइंट HTTP प्रॉक्सी सूची से HTTP पता तभी उपयोग कर सकता है जब लागू पॉलिसी और टनलिंग नियंत्रण अनुमति दें और उन स्तरों पर कोई प्रॉक्सी खाता कॉन्फ़िगर न हो। प्रॉक्सी प्रमाणीकरण में SOAP सेवा क्रेडेंशियल से स्वतंत्र, अलग HTTP/HTTPS proxyUser और proxyPassword गुण होते हैं।

ये WebSphere एक्सटेंशन हैं। Metro, CXF या किसी अन्य कार्यान्वयन में BindingProvider मैप उन स्ट्रिंग्स को पोर्टेबल नहीं बनाता।

अलग-अलग समवर्ती रूटों को उचित रूप से कॉन्फ़िगर किए गए क्लाइंट ऑब्जेक्ट पर रखें, कॉल चलते समय साझा पोर्ट संदर्भ को फिर से लिखने के बजाय। इससे पता वास्तविक क्लाइंट तक सीमित रहता है और उसके आसपास के सभी JVM नियंत्रण क्लाइंट-स्थानीय नहीं माने जाते।

संबंधित लेख