Вибір проксі для одного клієнта WebSphere 8.5.5 JAX-WS
Застосуйте документовані властивості проксі WebSphere до контексту запиту клієнта JAX-WS замість зміни маршрутизації всієї JVM.
Для 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 не вважаються локальними для клієнта.