2015-06-19 119 views
0

我需要實現一些JAX-WS客戶端(用於Websphere Application Server 7),它將請求使用SSL的服務器。問題是,如何動態地將SSL證書設置爲WS請求?我想要使​​用這裏介紹的方式http://www-01.ibm.com/support/knowledgecenter/SSAW57_7.0.0/com.ibm.websphere.nd.doc/info/ae/ae/tjw_security_https.html 這意味着使用設置SSL配置別名來引用配置。這看起來很容易,但是這個例子適用於JAX-RPC,我想知道,如果使用JAX-WS,這種配置是否可行。用JAX-WS可以做到這一點嗎?由於爲JAX-WS客戶端設置SSL

BindingProvider bindingProvider = (BindingProvider) importIsdn; 
     bindingProvider.getBinding().getHandlerChain().add(new Handler() { 
      public boolean handleMessage(MessageContext context) { 
       context.put("ssl.configName", wsClient.getSslConfigName()); 
       return true; 
      } 

      public boolean handleFault(MessageContext context) { 
       return false; 
      } 

      public void close(MessageContext context) { 

      } 
     }); 

回答

1

如果您使用的JAX-WS,請檢查您是否可以使用policy sets而不是在代碼做的。

根據WSHTTPS default創建策略,然後創建綁定並指定要使用的SSL配置(您可以在其中選擇SSL配置別名)。通過管理控制檯將策略附加到JAX-WS客戶端。