我有一个使用spring集成tcp连接的项目。
我用keytool-genkey-v-keystore命令生成了一个.keystore文件。
我使用上面的keystore和keytool-export命令生成了一个.cert文件。
我使用上面的cert和keytool-import命令生成了一个信任库文件。
在此之后,我在项目中使用了keystore和truststore文件,如下所示:
<bean id="sslContextSupport" class="org.springframework.integration.ip.tcp.connection.DefaultTcpSSLContextSupport">
<constructor-arg value="file:C:\Program Files\Java\jdk-11.0.6\bin\produced.keystore"/>
<constructor-arg value="file:C:\Program Files\Java\jdk-11.0.6\bin\producedTrustStore"/>
<constructor-arg value="TEST1234"/>
<constructor-arg value="TEST1234"/>
</bean>
<int-ip:tcp-connection-factory ...
ssl-context-support="sslContextSupport"
.../>
当我用这个配置发送请求时
SSLHandshakeException:sun.security.validator.ValidatorException: No trusted certificate found:No trusted certificate found
我怎样才能解决这个问题?
1条答案
按热度按时间kkih6yb81#
跑步
-Djavax.net.debug=all
调试tls/ssl问题。您是否已将服务器的证书导入信任存储区?
请参阅此测试用例及其注解。