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 პროქსების სიიდან მხოლოდ მას შემდეგ, რაც შესაბამისი პოლიტიკა და გვირაბის კონტროლი დაუშვებს და ამ დონეებზე პროქსის ანგარიში არ არის კონფიგურირებული. პროქსის ავთენტიფიკაციას აქვს ცალკე HTTP/HTTPS proxyUser და proxyPassword თვისებები, SOAP სერვისის მონაცემებისგან დამოუკიდებელი.

ეს WebSphere-ის გაფართოებებია. BindingProvider-ის რუკა Metro-ში, CXF-ში ან სხვა იმპლემენტაციაში ამ სტრიქონებს გადატანადს არ ხდის.

სხვადასხვა ერთდროული მარშრუტი შეინახეთ სათანადოდ კონფიგურირებულ კლიენტურ ობიექტებზე, ნაცვლად იმისა, რომ გამოძახებების დროს გადაწეროთ საერთო პორტის კონტექსტი. ასე მისამართი შემოიფარგლება ნამდვილი კლიენტით და მის გარშემო არსებული ყველა JVM კონტროლი კლიენტის ლოკალურად არ ითვლება.

დაკავშირებული სტატიები