解决方法
我认为您可以使用KeyStore.Builder编程加载基于密钥库的方法:
所以也许有一个类有一个webservice模板或扩展它,然后在spring配置中设置密钥库的文件路径,并使之成为一个inizialing bean(@PostConstruct in Spring 3?),然后加载密钥库.
File f = new File(keyStorePath); KeyStore.Builder builder = KeyStore.Builder.newInstance("type",provider,file,protection); KeyStore keystore = builder.getKeyStore();
好的 – 实际使用它与您的webservicetemplate我认为它必须基于keystore回调,如下所示:http://static.springsource.org/spring-ws/sites/1.5/reference/html/security.html#d0e4462
或者可以使用spring org.springframework.ws.transport.http.HttpsUrlConnectionMessageSender,您可以设置keystoremanager.然后可以由您的webservicetemplate使用.
有点像这样:
<bean id="template" class="org.springframework.ws.client.core.WebServiceTemplate"> <property name="messageSender"> <bean class="org.springframework.ws.transport.http.HttpsUrlConnectionMessageSender"> <property name=""></property> </bean> </property> </bean>
HTH