ਇੱਕ WebSphere 8.5.5 JAX-WS ਕਲਾਇੰਟ ਲਈ ਪ੍ਰੌਕਸੀ ਚੁਣਨਾ
ਪੂਰੀ JVM ਦੀ ਰੂਟਿੰਗ ਬਦਲਣ ਦੀ ਥਾਂ WebSphere ਦੀਆਂ ਦਸਤਾਵੇਜ਼ੀ ਪ੍ਰੌਕਸੀ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਨੂੰ JAX-WS ਕਲਾਇੰਟ ਦੇ ਬੇਨਤੀ ਸੰਦਰਭ 'ਤੇ ਲਾਗੂ ਕਰੋ।
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 ਨਿਯੰਤਰਣ ਕਲਾਇੰਟ-ਸਥਾਨਿਕ ਨਹੀਂ ਮੰਨੇ ਜਾਂਦੇ।