2015-06-19 60 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客户端。